#1 2022-03-21 09:36:15

Gecko
Админ
Из РФ, Казань
Зарегистрирован: 2018-06-02
Сообщений: 163
Сайт

Статус Xtreme3D, сайта и сообщества

Решил написать небольшой... не то манифест, не то дисклеймер - просто чтобы это было у всех на виду, и не возникало вопросов, на которые в тысячный раз приходится отвечать одно и то же.

Что из себя представляет Xtreme3D, и есть ли у него будущее?
Это движок на основе GLScene 1.0, написанный на Delphi 7. К сожалению, его невозможно портировать на современные версии Delphi без серьезной адаптации кодовой базы. В 2022 году писать на Delphi 7, сами понимаете, то еще "удовольствие", поэтому сама возможность добавлять новые фичи или как-то серьезно переделывать старые ограничена спецификой устаревшего языка, недоступностью современных библиотек и т.д. Другое существенное ограничение - OpenGL 1.5. Старый графический API не позволяет использовать многие техники, которые являются стандартом на сегодняшний день, или по крайней мере не дает реализовать их эффективно/кроссплатформенно/с удобством для пользователя. Переписывать Xtreme3D на другие языки и под современный OpenGL я не буду, так как это бесперспективная трата ресурсов - когда-то я начинал делать свой движок по образцу Xtreme3D, это постепенно привело меня к созданию Dagon, над которым я и работаю сейчас, и это уже совсем другая история.

Каков статус проекта и моего участия в нем в 2022 году (и в дальнейшем)?
Xtreme3D - это legacy-проект в режиме базовой техподдержки. Исходники Xtreme3D 3.x открыты - любой может брать и делать на их основе все, что угодно. Я больше не занимаюсь разработкой новых возможностей для Xtreme3D, и скорее всего 3.9 является последней версией. Максимум, я могу исправлять какие-то очевидные баги, которые легко детектить, либо добавлять простые функции-врапперы, не требующие написания новых классов и какой-либо сложной новой логики. Я в обозримом будущем буду обеспечивать существование сайта https://xtreme3d.ru и, вероятно, буду появляться на форуме, чтобы по мере сил отвечать на вопросы.

В общем случае, я не рекомендую использовать Xtreme3D начинающим - он преимущественно для тех, кто уже с ним раньше работал и по каким-то причинам хочет продолжать (например, из ностальгии или ради создания ремейка старого проекта). Xtreme3D нельзя сравнивать с актуальными инструментами, такими как Unity и др. Проблемы совместимости Xtreme3D с Game Maker 8 (и Windows 10), как и вопросы удобства создания игр по современным стандартам на этой связке, сегодня уже не могут быть темой для серьезных дискуссий - учитывая огромный выбор альтернатив, бесплатных/недорогих движков и языков с хорошей поддержкой и кроссплатформенностью.

Сам я не являюсь активным пользователем Xtreme3D и Game Maker - давно ушел на язык D. Какого-то коммерческого интереса развивать этот проект у меня, естественно, нет. Я могу лишь минимально консультировать по вопросам API и архитектуры движка, но я не буду тратить свое свободное время на то, чтобы бесплатно обучать пользованию Xtreme3D с нуля/фиксить баги в чужих исходниках/писать код и примеры по запросу. Если кого-то не устраивает такое положение дел, и он не готов большую часть времени самостоятельно разбираться в Xtreme3D и дорабатывать его, мириться с ограничениями, специфической архитектурой и проблемами совместимости, то я советую перейти на Unity, Unreal Engine или любой другой современный движок.

Надеюсь на понимание.

Примечание от 12.02.2023: я все-таки принял решение сделать еще один рывок, чтобы портировать Xtreme3D на современный Delphi и актуальную версию GLScene. Это оказалось необходимо для обеспечения совместимости с 64-битным GameMaker: Studio 2. Но не факт, что эта версия будет во всем аналогична Xtreme3D 3.9, и я не могу гарантировать, что смогу полноценно заниматься ее поддержкой в дальнейшем.

Offline

Подвал доски

Под управлением FluxBB