Вы не вошли.
Страницы 1
Тема закрыта
Хорошие новости: на днях купил Game Maker Studio 2 и решил, "из научного интереса", привязать к нему Xtreme3D. Вроде получилось, и даже без особых адаптаций в движке. Есть парочка особенностей:
Почему-то GMS2 плохо работает с функциями stdcall, не получается нормально передавать им параметры. Пришлось все функции поменять на cdecl.
Что ожидаемо, окно с вьювером Xtreme3D мерцает (конфликтуют две графические системы при перерисовке). В GMS2, к сожалению, нет set_automatic_draw, но эту проблему удалось победить другим способом, при помощи draw_enable_drawevent(false). Ее надо вызвать после отрисовки первого кадра, например по событию Alarm (в Create нельзя, иначе не появится окно игры). Таким образом, встроенная графика GMS полностью отключается, и работает только Xtreme.
В целом писать биндинги библиотек для GMS оказалось довольно удобно, так как можно все функции оформить одним скриптом.
Offline
Воу, не думал что на gms2 получится перенести, жалко что нету самого gms2 чтобы протестировать.
Как насчет производительности? есть прирост в FPS по сравнению с GM8?
Программист,Художник
музыкальный продюсер (FIRERUN): https://soundcloud.com/djfirerun
Xtreme3D Editor (Xtreme3D с графическим интерфейсом): https://vk.com/x3deditor
Offline
Производительность не сравнивал, т.к. еще не портировал все примеры, но полагаю, что обычно она примерно такая же. Допускаю, что в GMS2 более быстрая логика и оптимизирующий интерпретатор GML, который в некоторых случаях может дать прирост.
GMS2 я лично могу порекомендовать не из-за скорости, а скорее просто ради удобства - более развитый язык, удобный редактор, UTF-8 для строк, много различных новых фишек типа анимационных кривых и т.п. Если не жаль денег, то очень перспективный инструмент. Сам раньше относился к нему скептически, но сейчас изменил мнение
Offline
Ого. Так давно не заходил, а вы уже портировали на GMS )
Нет в планах сделать биндинг под С++? Хотя бы под 2010? Или под С?
Редактировался JunkerKun (2022-02-24 22:25:34)
Offline
С/С++ могу сделать, если нужно (сам просто обычно уже не пишу на C)
Я был бы очень признателен.
Я подозреваю немаленький прирост в производительности. Только мне еще интересно - а есть ли возможность полностью отключить шейдеры? Для полной совместимости с картофелинами и повышения производительности еще дальше.
Offline
Шейдеры специально нигде отключать не нужно, просто не использовать - базовый OpenGL там 1.5, если правильно помню (шейдеры используются через ARB-расширение, и если оно недоступно, то функция GLSLShaderCreate выдаст ошибку). Так что на старых машинках должно работать без проблем.
Offline
Ой, отлично вообще тогда.
Я действительно буду ОЧЕНЬ признателен, если будет бинд на С++ или на С.
Offline
На днях обнаружил, что, к сожалению, Xtreme3D 3.9.1 не работает с Game Maker Studio 2 версии 2022.800.0.161 и выше из-за полного перехода конструктора на 64-битную архитектуру. Движок доступен только в качестве 32-битной библиотеки. Так что можно считать, что история связки Xtreme3D + GM подошла к концу (что, впрочем, не отменяет возможность использовать его в других языках - только привязок маловато пока).
Offline
Страницы 1
Тема закрыта