ПрограммированиеФорум2D графика и изометрия

Распаковщик атласов (2 стр)

Страницы: 1 2 3 Следующая »
#15
4:44, 21 апр 2025

Aroch
> Поэтому понятное дело что нужно выставлять самому.
нет, так нет.

просто нарезать файл по "спрайтам", на основое непрерывности изображения, с этим даж юнити справляется:

+ Показать

при том, что "якорь" можно расставить там же, не отходя от кассы.
но это всё полезно, только если в юньке писать.

#16
5:08, 21 апр 2025

skalogryz
толку, этот автоматический якорь не применим и придется всё равно исправлять. Если уж делать автоматически, то нужно искать схожие части у спрайтов и выдумывать эвристику. Плюс пулям надо будет отдельный якорь у ствола пушек. Покажи лучше как юнити справился с мелкими спрайтами которые в виде облака точек в самом низу его атласа.

#17
5:15, 21 апр 2025

Aroch
> Плюс пулям надо будет отдельный якорь у ствола пушек.
а тут вообще большой вопрос, это свойство спрайта, или это геймдизайнерское свойство пушки. (и спрайт, ему должен подчиняться)

но в целом мысль правильная - спрайт это больше, чем просто картинка.
...и возможно удобнее пользоваться инструментарием целевого движка. При условии, что такой инструментарий есть.

Aroch
> Покажи лучше как юнити справился с мелкими спрайтами которые в виде облака точек в самом низу его атласа.
разбил на два
unity2 | Распаковщик атласов

#18
5:34, 21 апр 2025

skalogryz
> разбил на два
и настроить это дело нельзя я так понимаю? Чего он кстати делает их больше необходимого? На плотно упакованном атласе в котором элементы используют неровности границ (когда bounding boxes соседних спрайтов пересекаются) я так понимаю вообще без шансов.

#19
5:41, 21 апр 2025

Aroch
> когда bounding boxes соседних спрайтов пересекаются
bounding box могут пересекаться. (как видно на картинке выше)
главное, чтобы содержимое не сливалось непрозрачными пискелями.

Aroch
> и настроить это дело нельзя я так понимаю?
не похоже. Но опять же, править руками можно тут же.

#20
(Правка: 7:12) 7:09, 21 апр 2025

skalogryz
> главное, чтобы содержимое не сливалось непрозрачными пискелями.
ну вот кстати что будет по тем двум пересекающим боксам? Он продублирует пересекающие пиксели?

+ Показать

> не похоже. Но опять же, править руками можно тут же.
тут атлас попался относительно простой еще, буковки к примеру (левая часть скрина) не уверен что должны идти в одном спрайте.

#21
7:13, 21 апр 2025

Aroch
да. продублирует. ему пофигу сколько и как расположенные спрайты из текстуры (картинки) нарезать.

нет никакой технической нужды запрещать пересечение спрайтов.

#22
8:28, 21 апр 2025

skalogryz
> да. продублирует. ему пофигу сколько и как расположенные спрайты из текстуры (картинки) нарезать.
не верно так делать, справедливости ради тот вариант софтины что я выложил тоже этого не делает, но мне добавить обрезку причем не по тем видимым контурам, а попиксельную (то есть даже если для случая когда контуры будут пересекаться) вполне реально за пару часов кодинга добавить.
> нет никакой технической нужды запрещать пересечение спрайтов.
если ты из атласа собрался вырезать отдельные спрайты, то как бы ты хочешь на выходе получить отдельные спрайты, нет?

#23
14:20, 21 апр 2025

Aroch
> если ты из атласа собрался вырезать отдельные спрайты, то как бы ты хочешь на выходе получить отдельные спрайты, нет?
а если есть нужда порезать изображение как на отдельные спрайты, так и на одну общую картинку?!
всякое модет быть

#24
14:46, 21 апр 2025

skalogryz
> а если есть нужда порезать изображение как на отдельные спрайты, так и на одну общую картинку?!
как ты это себе представляешь? Смотри пример: в атласе есть спрайт открытых врат, внутри врат умещается на половину спрайт камня. Если делать как делает юнити, то все врата будут идти с обрезанным спрайтом камня.

#25
19:44, 21 апр 2025

как-то так: https://pikabu.ru/story/kustyi_i_oblaka_v_super_mario_bros_yeto_o… prayt_5898058

#26
0:16, 22 апр 2025

skalogryz
а это тут причем? /_- То что спрайты можно переиспользовать для кого-то было секретом? Для инвентированных спрайтов тоже мало кто сглупит отдельный спрайт в атлас помещать.

#27
(Правка: 0:48) 0:40, 22 апр 2025

Aroch
> а это тут причем? /_-
как это причём?! это же разные спрайты, которые использую одни и те же пиксели
и их bounding box могут пересекаться

Изображение
#28
(Правка: 2:04) 2:00, 22 апр 2025

skalogryz
ты запутался. Чтобы было понятней, ТСу не нужны виртуальные спрайты которые присутствуют в виде объектов в игре, ему нужны картинки для этих спрайтов. И вот эта картинка может быть одной, а в игре уже он может её пере использовать меняя как хочет хоть 100 раз и это вне рамок данной темы.
Даже еще больше расскажу, некоторые для оптимизации атласов даже находят одинаковые куски в самих спрайтах и оставляют их в единственном экземпляре, уменьшая тем самым размер атласа. Сами спрайты в игре при этом перестают быть обычным квадом из двух треугольников.

#29
(Правка: 6:38) 6:30, 22 апр 2025

Aroch
> ТСу не нужны виртуальные спрайты
а я про виртуальные спрайты
ТС уже получил своё - халявную утилиту.

но я надеюсь, что атлас он перепакует в что-то более экономичное.


А вот сколько здесь (по-идее, чтобы было удобно использовать) спрайтов? 2, 3, 4?
unity3 | Распаковщик атласов

Страницы: 1 2 3 Следующая »
ПрограммированиеФорум2D графика и изометрия