В здравом уме и твердой памяти, не кто не рискнёт чего-то делать, кроме как примеры простенькие и никому не нужные.
Не видел я отчаянных людей, кто напрямую пользует OpenGL и Direct3D, а тут уже Vulkan в стволе.
Direct Draw?
На кубиках много не навоюешь!
Хотя есть такие штуки, как Blueprints, в Unreal Engine, Unity, Blender - всяко-разно. (Но всё-же, главное скрипты.)
Но там не на все случаи жизни сделано, как в HiAsam, а заточено под задачи и параметры задаются иначе. И собственно получаем скрипт, а не код, который в компиляцию. Короче говоря, без скриптов далеко не уедешь.
Пятнадцать строк кода в скрипте заменят полк кубиков! + всё в реальном времени, а не по кадру в минуту.
Представь себе только один простейший уровень DOOMа на кубиках, а это Hello, world!
Согласен, никто движок не собирается делать. Но к удобству и лаконичности самовыражения надо стремиться.
Я тут исследование проводил , что есть достойного в графике и вообще на паскале. ...
Ничего готового и внятного, что актуально для сегодняшнего дня - нет.
- Не беда!
1. Не будем изобретать велосипед.
Будем брать, что наработано в паскале.
А у меня много чего есть из разных движков, а остальное дополнять и тусовать будем. Допустим "Вершинные шейдеры", Пиксельные шейдеы", "Геометрические" и "Частицы". Есть любая физика(4 штуки) - уже портировал в паскаль.
2. Я наблатыкался, и могу подёргать из C++ много чего.
Да, есть заморочки, но и библиотеки на паскале свести в одну тоже надо попотеть.
Возможно, но не факт, что и dll придётся юзать.
Может быть и не надо.
Я тут программку накатал, весь импорт dllок к exe-шнику опционально добавляется, не DLLLoader, а всё по чесноку. Переписываются секции и блоки пересчитываются по Relocation, ну и экспорт, и импрот.
Может быть и не надо.
Просто для гимнастики делал.
Может быть и не надо.
Просто для гимнастики делал.
Хочешь отдельной dll, хочешь в паскаль код запеку, или в виде LuaJit - не вопрос. + Lua-скрипт в паскаль код.
+ Любую dll в Lua-dll, причём все функции остаются доступны и из паскаля(и любого другого языка).
(Добавляем функцию luaopen_тратата. Причём к бинарной библиотеке.)
Это не то что я делал, а встроенная поддержка в библиотеках.pas.
Что касается python-а, то мои познания заканчиваются на Hello, world.
Можно попробовать прицепить C++ скрипты. Пока занимаюсь отдельно. Может и в Hiasm(delphi) не приживётся. Но для GLSL и HLSL по любому надо.
К чему я это всё?
Для "игрушечного" движка?
Конечно нет.
Просто можно делать такие симпатичные приложения, что и не снилось мудрецам.
Полёт мысли не ограничен визуальными контролами.
Короче, хотелось-бы всё это пробарбаросить, с примерами.