Давно не писал в канал, копил ману и готовился к ежегодной конференции Codefest, чтобы рассказать как можно написать wolf3d и doom с нуля в браузере, правда показывал слайды и демки в основном про отрисовку стен. Моей целью было пробежаться по идеям и вдохновить тех, кто задумывался пройти по этому пути сам.
Очень тяжело сжимать и укладывать идеи в 40 минут, когда за каждой из них стоят потраченные вечера или выходные. Чтобы погрузиться и оценить каждую идею нужно проделать путь с понимаем какую задачу решаем и как она связана с прошлой.
Из интересного. Буквально за неделю до доклада вышел ролик на youtube, который уже тогда успел собрать несколько десятков тысяч просмотров и получить восторженные комментарии. Про Doom спустя 30 лет в сети очень много информации: книги, обзоры, мемуары, фансайты, плюс ИИ, который сэкономит время на поиске информации. Здесь нужно подождать пока аудитория остынет и можно снова похайповать. Из не технического, очень рекомендую (снова) — Джон Ромеро. «Икона DOOM. Жизнь от первого лица. Автобиография»
Но, если цель стоит проникнуться и повторить идеи, чтобы попасть в клуб тех, кто смог написать что-то похожее на Doom, то здесь как в анекдоте:
— Расскажи как написать Doom?
— Давай расскажу
— Рассказать я и сам могу! Как написать?
Такого материала в сети мало. Из хорошего и проверенного лично мной, есть проект DIYDoom и серия роликов Recreating Doom in Python. Правда, в своё время мне их "немного" не хватило, чтобы быстро во всем разобраться или как вариант я просто
Если читает этот канал давно, то возможно помните как я лихо начал что-то повторять из DIYDoom и потом моя серия статей остановилась. Потом еще одна проблема в том, что попытки повторить Doom основываются на WAD файле. Это файл, который описывает уровень из Doom, он содержит в себе набор структур, которые толкает использовать обход BSP-дерева, что не формирует интуицию почему doom реализован именно так.
В общем, я решил пойти своей дорогой и написал в виде черновика пару десятков заметок и демок в отдельном проекте, поэтому ничего не спамил более месяца в канал. Ознакомившись с ними, надеюсь, вы сможете написать свой мини-движок похожий на DOOM. На протяжении двух недель начну выкладывать разделы получившегося туториала (если это так можно назвать) на канал, необходимо перевести все из совершенного сырого черновика в читаемый черновик.
PS Если захотите немного развлечься, то от выступления остался артефакт, викторина Game renderers from 90s — запускайте и играйте с друзьями (требует VPN), займет не более 5 минут