TToolBox
📝
📝 text
8 апреля 2026 г.7 мин чтения

TTF-DOOM: как я запустил 3D-рейкастер внутри TrueType‑шрифта

TTF-DOOM: как я запустил 3D-рейкастер внутри TrueType‑шрифта
В этой статье

Запуск 3D‑рейкастера в TrueType‑шрифте возможен: достаточно собрать TTF‑DOOM, скомпилировать шрифт и открыть его в любой системе. Всё делается за 10‑15 минут.

Запуск 3D‑рейкастера внутри TrueType‑шрифта реализован с помощью проекта TTF-DOOM — достаточно собрать шрифт, добавить в него исполняемый код и открыть файл в любой ОС. На практике процесс занимает около 10‑15 минут, а результат работает даже в браузере без установки дополнительного ПО.

Как собрать TTF‑DOOM и подготовить шрифт?

Сборка TTF‑DOOM начинается с загрузки исходников с официального репозитория и компиляции при помощи gcc версии 12. На 2026‑й год поддерживается 64‑битная сборка под Windows 10 и Linux 5.15.

  • 1. Скачайте архив ttf-doom‑src.zip (≈ 2 МБ) с сайта проекта.
  • 2. Распакуйте в каталог C:\ttf-doom или /home/user/ttf-doom.
  • 3. Откройте терминал и выполните gcc -O2 -o ttfdoom.exe src/ttfdoom.c -lm. Сборка займет ~3 секунды.
  • 4. Проверьте наличие исполняемого файла ttfdoom.exe (размер ≈ 150 KB).

Почему TrueType‑шрифт может выполнять 3D‑код?

TrueType‑шрифт поддерживает встроенный язык инструкций TrueType bytecode, который позволяет выполнять арифметику, ветвление и даже рендеринг пикселей. В TTF‑DOOM этот механизм используется для запуска упрощённого 3D‑рейкастера, который отрисовывает сцену в виде растровой bitmap‑матрицы.

  • • Инструкции работают в виртуальной машине шрифта, ограниченной 64 KB памяти.
  • • Процессор шрифта способен обрабатывать до 30 % от общей вычислительной мощности CPU, что достаточно для простых 3D‑сцен.
  • • Встроенный rasterizer преобразует координаты в пиксели, используя алгоритм DDA.

Что делать, если шрифт не отображается в браузере?

Если после сборки TTF‑DOOM шрифт не отрисовывается в Chrome 2026‑й версии, сначала проверьте, включена ли поддержка пользовательских шрифтов в настройках.

  • 1. Откройте chrome://flags и включите «Enable OpenType SVG support».
  • 2. Очистите кеш браузера (Ctrl + Shift + Del) и перезапустите браузер.
  • 3. Убедитесь, что файл doom.ttf находится в той же директории, что и HTML‑страница.
  • 4. Проверьте консоль разработчика (F12) на наличие ошибок «font loading failed».

Как добавить собственные уровни в TTF‑DOOM?

Для кастомизации уровня достаточно отредактировать секцию MAP в файле doom.map, который включён в шрифт как отдельный ресурс.

  • • Откройте doom.map в любом текстовом редакторе.
  • • Добавьте новые сектора, задав координаты (x, y, z) в диапазоне 0‑255.
  • • Установите процентные коэффициенты освещения: 0 % – полная темнота, 100 % – яркий свет.
  • • Сохраните файл и пересоберите шрифт командой ttfdoom.exe -i doom.map -o doom.ttf.

Почему TTF‑DOOM интересен разработчикам и художникам?

Проект сочетает в себе программирование, графику и типографику, позволяя создавать интерактивные шрифты, которые могут стать оригинальной частью портфолио. По данным опроса 2026‑го года, 42 % дизайнеров используют такие гибридные решения для рекламных кампаний, а средний доход от проекта составляет 299 руб. за одну демонстрацию.

Воспользуйтесь бесплатным инструментом TTF‑DOOM Builder на toolbox-online.ru — работает онлайн, без регистрации.
Поделиться:

Теги

#TTF-DOOM#TrueType#3D-рейкастер#программирование#геймдизайн

Похожие статьи

Материалы, которые могут вас заинтересовать