1 (23-11-2018 16:15:05 отредактировано be10ved)

Тема: Текстуры и шрифты

Здравствуйте.

При кодогенерации текстуры хранятся вне кодовых файлов. Шрифты вообще предполагаются установленными в ОС.
Есть ли планы осуществлять упаковывание текстур и шрифтов внутрь кодовых файлов при их генерации?
Практика использования показывает удобство такого подхода в определенных случаях.

2

Re: Текстуры и шрифты

Здравствуйте!
У нас была идея сохранять изображения текстур символов шрифтов в виде массивов данных на языке С непосредственно в создаваемых программных файлах. Но символов в файле шрифта может быть очень много. Т.е. в САПР в этом случае понадобится механизм определения со стороны пользователя того, какие символы в каждом конкретном шрифте, заданном в палитре шрифтов профиля проекта, можно использовать. При этом, обнаружение и не отображение незаданных пользователем символов в реальном времени способно заметно замедлить скорость прорисовки графики в САПР. Также, размер символов шрифтов может быть большим, что приведёт к значительным объемам текстовых программных файлов и, как следствие, к большой нагрузке на сегмент инициализированных данных при загрузке уже скомпилированного ПО в ОС.
Понимая всё это, мы решили не нагружать пользователя САПР избыточной работой со шрифтами и отдать генерацию внешнего вида шрифтов ОС, в которой будет работать созданное САПР ПО. Механизмы, которыми ОС пользуются для растеризации шрифтов, как правило, доступны разработчикам в этой ОС, и их можно использовать для данных нужд. Например, библиотека FreeType используется в большинстве дистрибутивов Linux систем, а также в iOS, Android и многих других ОС. Мы также пользуемся её в проектах-примерах, находящихся в поставочном архиве САПР, и показывающих применение кодогенерации для разных ОС.