Войти
ПрограммированиеФорумГрафика

Кто-нибудь делал автосборку атласов на лету? (5 стр)

Страницы: 1 2 3 4 5 6 Следующая »
#60
15:14, 10 мая 2022

MrShoor
> тоже куча пустого прострнаства
вот поэтому и написал "тогда уж". Раз пустое пространство в обоих случаях, то уж лучше его использовать с пользой по максимуму.
> Атлас генерится на лету прямо в рантайме (и даже не на этапе загрузки уровня, а
> прямо на этапе рендера). Т.е. игре нужно отрисовать новый глиф, которого еще
> нету, код: 1. Достает глифы в виде кривых из шрифта 2. Аппроксимирует кучей
> отрезков 3. Выделяет место под этот глиф в атласе 4. Генерит sdf прямо в атласе
> по нужному месту
у меня также, для шрифтов которые используется для отображения пользовательских данных.

#61
15:38, 10 мая 2022

betauser

> Вот что даёт простая сортировка по высоте
С сортировкой и без - разница будет от силы 15%. И то, на очень специфичных данных.

#62
(Правка: 16:24) 16:23, 10 мая 2022

Ghost2
> С сортировкой и без - разница будет от силы 15%. И то, на очень специфичных
> данных.
она будет и это либо имеет значение либо нет. Так то для большей плотности упаковки есть еще уйма способов оптимизации, вплоть до нарезания самих спрайтов (если это 2d) на регулярные кусочки да еще так чтобы выкинуть повторяющиеся. Уже обсуждалось когда-то тут.

#63
20:32, 10 мая 2022

Ghost2
> > Вот что даёт простая сортировка по высоте
> С сортировкой и без - разница будет от силы 15%. И то, на очень специфичных
> данных.
На квадратных разница 0%)

#64
21:15, 10 мая 2022

betauser
Вот у тебя показана хитрая запаковка атласа для шрифта. Но ведь это можно подготовить и во время запаковка ресурсов. В настоящем "на лету" символы будут приходить как попало, и их уже так не посортируешь по высоте. Благо высота их ±  одинакова, кроме всяких минусов.

#65
21:29, 10 мая 2022

HolyDel
> Вот у тебя показана хитрая запаковка атласа для шрифта. Но ведь это можно
> подготовить и во время запаковка ресурсов. В настоящем "на лету" символы будут
> приходить как попало, и их уже так не посортируешь по высоте. Благо высота их
> ±  одинакова, кроме всяких минусов.
Можно по разному делать, а вот нюанс того, что изображения символов рендерятся под каждый размер шрифта, не даёт возможности подготовить их заранее. Например, нужно три варианта сделать, на 10, 15 и 20 пикселей по высоте. С учетом того, что у всех разное разрешение экрана, то предефайнить совсем никак. Если предрасчитать, то будет мыло.

#66
21:31, 10 мая 2022

HolyDel
Ну вообще да, шрифты паковать большого смысла нет, символы по большей части одинаковые по высоте.

#67
21:57, 10 мая 2022

betauser
> Это NeoAxis Engine! 70% пустого места непонятно где нашлось, между буквами
> нужно отступ для мипов, чтобы в 3D рисовать.
Отступ размером с глиф? серьёзно?

#68
22:04, 10 мая 2022

samrrr
> Отступ размером с глиф? серьёзно?
Серьезно)
Cat | Кто-нибудь делал автосборку атласов на лету?

#69
22:04, 10 мая 2022

betauser

> На квадратных разница 0%)
О чем и речь. В статике да, есть вероятность сэкономить на сортировке. В динамике (когда есть некая уверенность в том, что перейдёшь на следующий атлас) это уже не имеет особого смысла.

#70
23:27, 10 мая 2022

betauser
> Серьезно)
Записываем это двигло к разряду того, с чем никогда не стоит иметь дело, как с унижайном.

#71
0:08, 11 мая 2022

samrrr
> Записываем это двигло к разряду того, с чем никогда не стоит иметь дело, как с
> унижайном.
Серьезно?

#72
0:14, 11 мая 2022

betauser
> Серьезно?
Серьезно)
Cat | Кто-нибудь делал автосборку атласов на лету?

#73
14:56, 11 мая 2022

samrrr
> Записываем это двигло к разряду того, с чем никогда не стоит иметь дело, как с
> унижайном.

А чем Unigine-то не угодил? 0_о Идеология\Концепция?

#74
21:01, 11 мая 2022

g-cont
> А чем Unigine-то не угодил? 0_о Идеология\Концепция?
Поработаешь с ним, поймёшь.

https://developer.unigine.com/ru/docs/2.15.1/api/library/common/c… ptr?rlang=cpp
Конструкторы перемещения? Ишь чего захотел, нет такого. Если ты думаешь что это обычный shared_ptr то нет, это помесь shared и weak. И примерно тоже самое качество кода во всём движке.

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