Как стать автором
Обновить

Комментарии 36

Вы правда перевели map как карта? (Абзац про отказ от стандартной библиотеки С++). Или под картой имеется в виду что-то другое?
Да, моя ошибка, уже думал в контексте игры и автоматически перевёл, имея в виду карту уровня.
А зачем вы перевели stencil buffer как «шаблонный буфер»? Уж сильно глаза режет. Правильнее было бы «трафарет». Всё-таки под «шаблоном» чаще всего понимают «template».

Doom запустили в Doom, куда уж дальше? Осталось разве что его на майнкрафтовском компьютере сделать.

В пятом Думе запустить третий, в котором запущен первый

image

Doom в Doom-е Doom-ом погоняет :D
Doom на java был самым лучшим в серии игр… На ПК id sofware выпускали бездумные шутеры, а на телефоны — пошаговые РПГ с невероятно захватывающим сюжетом(в том числе doom 2, wolvenstein, orcs and elves — две части)
Надо только понимать, что обильное комментирование хорошо в учебных целях, но скорее плохо в реальном проекте.
Если вдруг кто-то не понимает почему:
Код меняется. Комментарии часто остаются устаревшими и начинают работать в обратную сторону.
Также современные языки позволяют писать достаточно прозрачный код, который самодокументируем.
Вспоминаем простое правило:
«Если вам нужно написать комментарий, чтобы ваш код стал понятен — это повод переписать код.»

Это не касается сложных/неочевидных алгоритмов/участков кода — без комментариев через полгода-год в них даже с поллитрой уже не разберешься.

Вот только в этом случае комментируют не код, а алгоритм.
Можете объяснить почему?
Парой строчек выше уже ответили.
БОльшую часть кода можно написать так, чтобы она была понятна без комментариев.
Это чушь. Отсутствие комментариев и документации разве что для формошлепных проектов допустимо.
Вы пишете непонятный код?
При чем тут это? Как вы себе представляете работу с чем-то типа этого, если комментариев нет?

Комментарии просто необходимы для любого не типового проекта. Конечно, если речь про какой-нибудь энтерпрайз на модном фреймворке, где шаг в сторону от стандарта — расстрел, то это всё не нужно, потому что это даже не программирование в полном смысле слова.
Подождите, это не совсем комментарии. Это doxygen. Нормальная документация контракта. Мы не про это сейчас говорим.
В статье приведены куски из .cpp файлов с комментарием чуть ли не на каждую строку.
Любил эту игру ровно до момента прочтения этой статьи. Неужели в то время не могли написать это лучше? Ну, явно очевидны более элегантные решения.
Хм, например?
Заглянул автору вбро противоречивого комментария в профиль и понял, что связного ответа мы не дождёмся.
Интересный факт: Похоже, что команда Id Software — фанаты франшизы «Матрица»: рабочее название Quake III было «Trinity», а у Doom III рабочим названием было «Neo». Это объясняет, почему весь исходный код находится в подпапке neo.

Когда успели? Матрица в 1999 вышла, как и Quake III.
Все нормально, просто сбой в матрице :)

В США Матрица вышла 31 марта, Q3 аж 2 декабря того же года. За 8 месяцев вполне могли проникнуться.

Рабочее название, обычно, дается при старте разработки.
В 2004 году начальной заставкой обычно было воспроизводимое во весь экран видео. После завершения ролика загружался уровень и в дело вступал движок, но в Doom III была совершенно другая история

Речь о пятой минуте приложенного видео

Чего люди только не сделают, чтобы прикрутить фонарик к оружию..

Всегда удивляла эта борьба с виртуальными методами. Неужели это так сильно сказывается на производительности?
Спасибо за подробный разбор. Но помню сам дум 3 меня уже оставил равнодушным. Уже не то. Может действительно стоит попробовать, вдруг зацепит…

Когда одновременно вышли Doom3 и HL2, был поражен, насколько Doom более требовательный к ресурсам, но некрасивый и мертвый, а HL быстрый и делает приятную живую картинку.

Хороший обзор, хорошего кода, о хорошей игре.
Так что тут тоже есть Doom в Doom`e и в Doom`e…
ну все легенды уже разобрали — теперь ждем то же по халф лайф

Пара зацепивших моментов:


  • почему бы для серьезного анализа кода не взять полную версию VS 2010, а не Express — был бы и MFC, и подсветка. Хотя бы триал можно взять всегда.
  • ну и VS.NET — это просто название версии Visual Studio, она отнюдь не требовала разрабатывать приложения с использованием .NET Framework как таковой
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории