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

Сам написал, сам полетал: как и зачем я разработал 3D-игру с нуля под компьютеры из 90-х в 2024 году?

Уровень сложностиСредний
Время на прочтение21 мин
Количество просмотров14K
Всего голосов 81: ↑79 и ↓2+103
Комментарии30

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

Друзья! Во время подготовки материала, мне помогли читатели, быстро скинувшись на ATX-БП (мой помер во время сборки тестового стенда), за что им большое спасибо. Их ники:

Hidden text

Чуть позже выйдет дополненная видео-версия этой статьи: для тех читателей, кто ещё не вкурсе, я потихоньку развиваю и канал на ютубе:

https://www.youtube.com/channel/UCrBLrnB92ZWz04dRG-VhIoQ

Стараюсь радовать вас свежим контентом :)

Касательно рубрики о гпу прошлых лет: я хотел писать статью о Xbox Original на основании слитых исходников прошивки консоли с практической частью. Может у кого-то есть за не слишком дорогую цену? Можно в том числе и некомплект или невключайку - постараюсь оживить.

а потом и за Dreamcast модно взяться, там как раз dx6..

Ну дримка дорого стоит, а я бомж) но с удовольствием покопал бы

Я прям ощущаю боль, когда вспоминаю тот старый DirectX. COM - как стекло на зубах. С…а, эти счетчики объектов, слёзы.

В этом случае, рефкаунтинг как концепция вполне неплох, лучше чем ручной delete и ручные пулы. Кстати, поскольку враппер не закончен, у него люто течёт память - не во всех деструкторах вызывается Release

Насчёт COM, то в DX в основном лишь QueryInterface юзается. Но главная болячка - это GUID'ы, десять версий формально одного и того-же интерфейса и HRESULT-based обработка ошибок)) Но в целом мне понравилось, не сильно отличается от DX9.

А вот первые версии D3D вообще не похожи на свежие и там вообще все строилось на командбуферах с ручной генерацией команд с помощью макросов!

тот старый DirectX

COM в DirectX используется по сей день :)

Зачем мучиться с C# и протаскивать в него вызовы DirectX? Не проще ли было сразу всё писать на нативном C++? Так бы даже было аутентично.

Люблю дотнет и изначально знаю, что он работает на Win9x. На плюсах велика вероятность, что попротил бы где-нибудь стек условно и полдня искал бы ошибку, или где-то HRESULT не проверил и думал почему на ATI всё хорошо, а на Trident - нет.

Для пущей аутентичности ру-геймдева нужно было писать на Delphi и там шанс ошибиться значительно ниже :)

:))

Да я вот думаю - взять движок Q3 и запилить. Там же в принципе все есть.. модельки только неказистые. А ведь WR пользуется популярностью ! ☝

Для пущей аутентичности ру-геймдева нужно было писать на Delphi и там шанс ошибиться значительно ниже :)

Ну, кстати, Pentium 3 это как раз 99 год, примерно в то же время под Delphi уже вышел граф. движок GLScene, не надо руками всё писать. Ещё одна потенциальная идея для ретро геймдева, те самые кривые-косые движки и конструкторы из 2000-х.

Где вы успели столько опыта набраться?)

Сам. Но в случае графона это чисто вершки корешки и математической базы мне не хватает

Но звучит все очень интересно!

Я как раз в 90-е учился (94-99), и на своем п166ммх (97г.) с 32 озу Шикина и Борескова купил в лотке в атриуме Воронежского ГосУнивера в те года первую их книжку.
Как раз с ними и занимался, а до них на спектруме тоже была книжка с математикой и графикой, тоже дома где-то лежит, года два назад видел, разбирая завалы ;)

Интересный проект )

Спасибо

О, классная игрушка. Мне вообще нравятся аркадные леталки!

Внезапно с C# многое можно сделать для ретро-платформ. Есть тулчейн bflat, есть dotNES.

Верно. Правда для нес мне точно не приходило в голову писать на дотнете, туда то и Plain C уже тяжелый)

Аж олдскулы свело

Респект.

Спасибо!

Ой-ой, а FPS то успел просесть с 1.000 до 50 из-за большого количества DIP'ов

...

С учётом всех оптимизацией, получаем 17-20 кадров

Что-то не сходится.

Так 50 кадров на основном десктопе было (1660S) :)

Ещё на первом курсе ПТУ я написал небольшую демку с 3D-вертолетиками по сети

Думал что ПТУ уже все померли или их переделали под колледжи. В каком ПТУ и в каком году учились, если не секрет?

ретро-компьютинг и программирование демок — это, во-первых, всегда интересно. Среди моих подписчиков довольно много ребят, которые ещё учатся в школе, а уже натаскали с барахолок Pentium III или Pentium IV и GeForce 4 MX440 и сидят, балдеют и играют в замечательные игрушки из нулевых на таких машинах с по настоящему трушным опытом, да и я сам таким был и остаюсь по сей день.
Так что факт остаётся фактом — ретро-компьютинг становится всё более и более популярен — что не может не радовать!

Это не "ретро-компьютинг", а "назад-в-будущее" (и, как это повелось, с отставанием от "всего мира" на 30-50 лет): отдельные и далеко не массовые отечественные разработчики, начинают c wow-эффектом вкушать то, что мир прошёл ещё в 1970-х и ранних 1990-х. ;)

А книжечки, то вот они :))))

НЛО прилетело и опубликовало эту надпись здесь
Зарегистрируйтесь на Хабре, чтобы оставить комментарий