10 лет блогу

Сегодня мой блог о разработке игр на языке D отмечает 10-летний юбилей! 30 сентября 2012 года я опубликовал первый пост, в котором поставил задачу написать 3D-игру на D с использованием OpenGL. С тех пор утекло много воды, я несколько раз переписывал заново свой движок, перешел с 32-битной на 64-битную архитектуру, сменил несколько операционных систем и версий OpenGL, но изначальная цель не поменялась.

В 2015 году блог привлек внимание русскоязычного филиала журнала PC Magazine, который проводил опрос, посвященный разработке игр: как устроены игры изнутри, как программируются серверы, как моделируется игровой мир, какие используются средства разработки. Материал по результатам опроса – в котором, в числе прочего, упоминается и мой движок – был опубликован на сайте журнала, но, к сожалению, теперь не доступен в связи с уходом PC Magazine из России. В 2019 году, спустя 7 лет со дня открытия блога https://dlanggamedev.blogspot.com, я переехал на коммерческий хостинг и личный WordPress. Администрирование собственного WP-сайта было для меня совершенно новым опытом, я изучил PHP и улучшил навыки верстальщика – однажды даже написал свой спам-фильтр для комментариев, но в этом оказалось мало смысла после перехода на reCAPTCHA v3.

За эти годы инди-геймдев, к сожалению, так и не стал для меня коммерчески выгодным занятием. Скажу прямо: работа над Electronvolt непомерно затянулась, и вряд ли ее выпуск как-то финансово оправдает вложенные усилия и время. Доход, который я получаю от всех моих хобби-проектов, основан на донатах через Patreon и PayPal. Но это не значит, что я разочарован – наоборот, в процессе я написал кучу полезного кода, который мне постоянно пригождается в других сферах деятельности. За эти 10 лет я глубоко погрузился в профессию графического разработчика и изучил множество технологий: в 2016 году даже рассматривал возможность стажировки в NVIDIA, но раздумал, так как не захотел переезжать в Москву. Позднее мне довелось четыре года проработать в цифровой рекламе в продакшн-компании SmartHead, где я сделал множество интерактивных баннеров и несколько рекламных игр. Самыми интересными проектами были игры “Привидения и котики” для Google и “Food Box Killer” для Ehrmann (вторая примечательна использованием движка Phaser 3), а также брендинг Forbes для BMW с анимацией на основе шейдерного эффекта WebGL. К сожалению, выложить эти проекты на сайт не могу из-за NDA, но вы можете их увидеть на сайте баннерного отдела SmartHead. Знания, которые я приобрел благодаря своему хобби, очень помогли в работе, и я даже как-то раз использовал D для одной специфической задачи – а именно, для написания генератора выпуклых оболочек для спрайтов под физический движок Matter.js.

Сегодня я занимаюсь, в основном, веб-разработкой и графическим дизайном на фрилансе. Много пишу на JS (браузерный код и Node.js), а D так и остался языком “для души”. Но, может, это и к лучшему – ведь должно же быть у человека чисто творческое занятие, в котором он полностью свободен и независим от чужих задач и потребностей: по образованию я художник, и к программированию отношусь как к отдельному виду искусства. На D легко и приятно писать, и я все еще считаю его лучшим из всех компилируемых языков – ни на минуту не пожалел, что вложил столько сил в код на нишевом языке с небольшим сообществом. Хотя часто жалею, что в сутках всего 24 часа – не успеваю отслеживать все интересные мне новые технологии. OpenCL, CUDA, Vulkan, WebGPU, аппаратная трассировка лучей – что-то прошло мимо меня, что-то я изучил лишь на самом базовом уровне. Но надеюсь, что смогу углубляться в эту сферу и дальше – и, конечно, вести блог еще 10 лет, минимум!

Новые статьи на Medium

Написал две новые статьи на английском:

  • dlib: Past, Present and Future – экскурс в историю dlib, о текущем статусе проекта и планах на будущее;
  • GitHub Actions and D – о том, как настроить тестирование на GitHub Actions для проектов на D.

Новый домен

Я переношу все свои личные проекты на домен timurgafarov.ru, так что блог отныне будет доступен как https://gamedev.timurgafarov.ru/. Старый адрес в ближайшем будущем сохранится, но будет перенаправлять на новый.

Блог на Medium

Я решил начать писать для англоязычной аудитории, в связи с чем зарегистрировался на платформе Medium: https://medium.com/@gecko0307. Там я собираюсь фокусироваться на разработке Dagon и связанных с ней узкоспециализированных темах. Постоянных читателей спешу заверить, что русскоязычный блог я забрасывать не собираюсь, но и посты дублировать, скорее всего, не буду, так что читайте меня и тут, и там. Этот блог я планирую использовать больше для новостей по проектам, анонсов, размышлений о D и других языках, геймдеве и программировании в целом.