Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Xtreme3D 3.9.1 для Game Maker Studio
#1
[Изображение: Q0AAAgLC9OA-960.jpg]

Хорошие новости: на днях купил Game Maker Studio 2 и решил, "из научного интереса", привязать к нему Xtreme3D. Вроде получилось, и даже без особых адаптаций в движке. Есть парочка особенностей:
  • Почему-то GMS2 плохо работает с функциями stdcall, не получается нормально передавать им параметры. Пришлось все функции поменять на cdecl.
  • Что ожидаемо, окно с вьювером Xtreme3D мерцает (конфликтуют две графические системы при перерисовке). В GMS2, к сожалению, нет set_automatic_draw, но эту проблему удалось победить другим способом, при помощи draw_enable_drawevent(false). Ее надо вызвать после отрисовки первого кадра, например по событию Alarm (в Create нельзя, иначе не появится окно игры). Таким образом, встроенная графика GMS полностью отключается, и работает только Xtreme.

В целом писать биндинги библиотек для GMS оказалось довольно удобно, так как можно все функции оформить одним скриптом.

[Изображение: gms-x3d.jpg]

SDK: https://github.com/xtreme3d/xtreme3d/rel...tag/v3.9.1
#2
Воу, не думал что на gms2 получится перенести, жалко что нету самого gms2 чтобы протестировать.
Как насчет производительности? есть прирост в FPS по сравнению с GM8?
Программист,Художник
музыкальный продюсер (FIRERUN): https://soundcloud.com/djfirerun
Xtreme3D Editor (Xtreme3D с графическим интерфейсом): https://vk.com/x3deditor
#3
Производительность не сравнивал, т.к. еще не портировал все примеры, но полагаю, что обычно она примерно такая же. Допускаю, что в GMS2 более быстрая логика и оптимизирующий интерпретатор GML, который в некоторых случаях может дать прирост.
GMS2 я лично могу порекомендовать не из-за скорости, а скорее просто ради удобства - более развитый язык, удобный редактор, UTF-8 для строк, много различных новых фишек типа анимационных кривых и т.п. Если не жаль денег, то очень перспективный инструмент. Сам раньше относился к нему скептически, но сейчас изменил мнение Cool
#4
Ого. Так давно не заходил, а вы уже портировали на GMS )
Нет в планах сделать биндинг под С++? Хотя бы под 2010? Или под С?
#5
С/С++ могу сделать, если нужно (сам просто обычно уже не пишу на C)
#6
Gecko Написал:С/С++ могу сделать, если нужно (сам просто обычно уже не пишу на C)
Я был бы очень признателен.
Я подозреваю немаленький прирост в производительности. Только мне еще интересно - а есть ли возможность полностью отключить шейдеры? Для полной совместимости с картофелинами и повышения производительности еще дальше.
#7
Шейдеры специально нигде отключать не нужно, просто не использовать - базовый OpenGL там 1.5, если правильно помню (шейдеры используются через ARB-расширение, и если оно недоступно, то функция GLSLShaderCreate выдаст ошибку). Так что на старых машинках должно работать без проблем.
#8
Ой, отлично вообще тогда.
Я действительно буду ОЧЕНЬ признателен, если будет бинд на С++ или на С.
#9
На днях обнаружил, что, к сожалению, Xtreme3D 3.9.1 не работает с Game Maker Studio 2 версии 2022.800.0.161 и выше из-за полного перехода конструктора на 64-битную архитектуру. Движок доступен только в качестве 32-битной библиотеки. Так что можно считать, что история связки Xtreme3D + GM подошла к концу (что, впрочем, не отменяет возможность использовать его в других языках - только привязок маловато пока).


Перейти к форуму:


Пользователи, просматривающие эту тему: 6 Гость(ей)