[#] [Перевод] Анализ исходного кода Duke Nukem 3D: Часть 2
habrabot(difrex,1) — All
2017-03-12 12:30:04


![image][1]

_[Перевод первой части находится [здесь][2].]_


# Унаследованный код


_Build_ — это выдающийся движок, а множество игр, использовавших его, принесли большую и заслуженную славу и Кену Силверману, и 3D Realms.

Кен Силверман выполнил условия договора: он предоставил двоичный файл потрясающего 3D-движка с [хорошо задокументированными методами и форматами ресурсов][3]. В качестве признания его заслуг 3D Realms [указала его имя в титрах][4] как «Ken 'I can do that' Silverman» (Кен «Я могу это сделать» Силверман). Но разработка _Build_ была сосредоточена на возможностях и скорости, а не удобстве портирования и чтения. После изучения кода я думаю, что open source-разработчики избегали его по следующим причинам:

* Его обескураживающе сложно читать и получать из него знания.
* Он не был портируемым.
В этой статье я перечислил часть сложностей, с которыми столкнулся. Также я выпустил порт Chocolate Duke Nukem 3D, призванный решить эти проблемы. Я хотел, чтобы люди запомнили, какой уровень гениальности нужен был для создания 3D-движка в то время. Кроме того, я хотел, чтобы они осознали, как движимый страстью подросток смог внести вклад в одну величайших игр всех времён.
[Читать дальше →][5]

[1]: https://habrastorage.org/getpro/habr/post_images/ab4/56b/848/ab456b84893971cb5b6702d755bea49f.jpg
[2]: https://habrahabr.ru/post/323426/
[3]: http://fabiensanglard.net/duke3d/BUILDINF.TXT
[4]: http://fd.fabiensanglard.net/duke3d/Duke_credit.png
[5]: https://habrahabr.ru/post/323684/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut