Культовый шутер от id Software запускали и на карманных приставках, и на калькуляторах, и на стиральных машинках, но сделать его в Microsoft Excel – это мощно, да. Впрочем, название очевидно кликбейтное. В творении пользователя C Bel от DOOM по сути лишь название файла и базовый концепт. Но от этого достижение товарища не становится менее значимым. И сейчас я отвечу на два хтонических, как лобковый волос мамонта, вопроса – КАК и ЗАЧЕМ он это сделал.

Не хочешь читать текст? Смотри видео!

DOOM в MS Excel

С ЗАЧЕМ разобраться довольно просто. C Bel является, помимо разработчика игр, ещё и учителем Excel, и данным проектом он хотел показать, что даже в самых сложных задачах можно обойтись исключительно стандартными математическими формулами. Ведь в качестве альтернативы формулам обычно используется язык VBA, он же – Visual Basic for Application.

doom excel 5

И в то время, как формулы Excel – это инструменты с довольно ограниченной областью применения, на VBA можно написать почти всё, что угодно. Хоть это и упрощённый, но всё же язык программирования. Целью C Bel было показать, НАСКОЛЬКО СИЛЬНО люди недооценивают возможность формул и почему им не стоит сорвя голову бежать изучать VBA, как только на горизонте замаячит задача посложнее расчёта, скажем, годовых затрат. И лично я считаю, что у него получилось.

doom excel 4

Теперь вопрос – КАК? Поскольку C Bel владеет формулами Excel на уровне чёрной магии Дэвида Блэйна, я даже пытаться не буду понять, насколько он велик. Или велик. Или самокат. Или даже гироскутер – мы ж тут современные люди, правда? Я сделаю иначе – для начала расскажу, ЧТО именно ему удалось сделать. Итак, при помощи Excel и исключительно математических формул он реализовал:

  • бесконечную процедурно-генерируемую карту
  • трассировку лучей в реальном времени
  • расчёт столкновений
  • рендеринг света
  • расчёт шейдеров
  • и движок перемещения

Будучи разработчиком игр, автор попросту имел представление о том, как создать подобный лабиринт, используя программирование, а доскональное знание формул Excel позволило ему попросту интерпретировать программный код в математические формулы. Это звучит, как трансформер, состоящий из костыля на костыле, но впечатляющий вне всяких мер.

Читайте также: обзор Bayonetta 1 & 2 – Лучшее время ознакомиться с классикой

У зрителей менее опытных возникнет вопрос – как вообще можно сделать игру настолько сложную, используя только формулы? Без текстур, без полноценного игрового движка, без анимаций и прочего? Расскажу секрет. По сути, при создании игры мы делаем упор либо на использование памяти компьютера, либо на использование ресурсов его процессора и видеокарты. То есть, та же самая текстура может либо храниться на жестком диске устройства, либо создаваться по формулам прямо на лету силами процессора.

Два самых экстримальных примера – No Man’s Sky с тремя гигабайтами на обозримую вселенную внутри игры, и малоизвестная нынче игра kkrieger. Её вы на скриншотах ниже сейчас и видите.

Хотите верьте, хотите нет, но она занимает 96 КИЛОБАЙТ. Кило-БАЙТ. На жестком диске. Меньше, чем картинка, которая стоит у вас на аватарке в фейсбуке. Это впечатляет, и лично меня впечатляет не меньше, чем без пяти минут DOOM в Microsoft Excel.

doom excel 1

Источник: Gamasutra



Почётный главред, пишу много, иногда пишу в тему. Интересуюсь компьютерными & мобильными играми, а также связанными темами. Почти что эстет, предпочитаю наслаждаться, а не хаять.