Чтобы кэш шрифтов при оффлайновом построении не сбрасывался из-за большого числа надписей с разными шрифтами, лучше поднимать количество возможных атласов через Slate.MaxFontAtlasPagesBeforeFlush и Slate.MaxFontNonAtlasTexturesBeforeFlush . Их нет в официальной доке, но как минимум в 5.2+ они есть.
пятница, 17 ноября 2023 г.
суббота, 28 октября 2023 г.
Апдейт по разработке hrtp-demake
Маленький технический апдейт.
Второй босс-файт готов, остались исключительно технические вещи:
- Сделать адекватный экран загрузки, чтобы загрузка не выглядела стрёмно
- Оптимизация загрузки/выгрузки ресурсов (сейчас всё жирно грузится при старте, реально это 13 с, но память жрёт будь здоров, олдовые машины будут не рады).
- Отдельно подтюнить загрузку экрана победы
вторник, 26 сентября 2023 г.
Мелкие заметки по архитектуре для 2D-игр
Поймал себя на мыслях о нескольких вещах. Это чисто техническая заметка.
Как-то надо у себя упрощать добавление/создание спрайтов на сцене. Сейчас часто это скриптами делается и поля приходится создавать вручную. Так-то норм, но... медленно что-то. И много писанины в итоге. Хочется упрощать, но возни всё равно пока много. Возможно нужны дополнительные конечные автоматы для переключения анимаций.
Ещё смущает, что анимации всяких сложных действий внутри игры превращаются в набор сложных if'ов, и есть ощущение, что стоит подумать о всяких composability для корректности.
Кроме того, для всяких шмапов имеет смысл задавать не параметры полёта пуль, а состояние условного поля в момент времени t, исходя из систем пуль, храня что-то вроде набора состояний жив/мёртв. Это позволяет решить ситуации когда FPS просаживается или подскакивает и, в целом, получше решить проблему. Т.е. хранить не функции зависимости скорости, ускорения от момента времени, а строго позиции от времени и по ней пересчитывать, включая всякие появляющиеся пули. Но, сейчас это делать не хочется, ибо много переписывать, хотя кое-где уже такое по сути есть.
Ещё бы сделать какой-нибудь батчинг для анимированных по текстурным координатам спрайтов, к примеру, пихнуть в UBO условный индекс в текстуре, а потом анимировать его. Ну и может быть для задержек/опережений иметь дополнительный буфер смещений. В теории должно дать ускорение, но увы, это надо править в самом saddy.
Как-то так.
среда, 6 сентября 2023 г.
FProperty::HasMetaData в Unreal тоже выпиливается в финальной сборке
И вот это совсем какое-то говно. У меня только один вопрос: зачем говорить, что у вас есть рефлексия, если вы просто выпиливаете часть аннотаций при сборке.
вторник, 5 сентября 2023 г.
Постоянный попаданец
В отпуске после прочтения хайнлайновского "Иова или осмеяние справедливости" пришла нехитрая и довольно странная мысль. Сейчас довольно популярен жанр исекая или попросту "попаданчества" с несложной фабулой вида "попал в другой мир и дальше пошёл гриндить и идти к успеху". Понятное дело, что это эскапизм, но пост не про это.
понедельник, 28 августа 2023 г.
Затруднения и hrtp-demake
Я уже давно ничего не писал про игру, и это связано со множеством разнообразных изменений, которые сильно замедлили темп разработки. Это и занятия спортом (стало необходимо), и смена работы, и, к сожалению, неприятные личные события.