обсуждали
здесь общие концепции, много воды утекло с тех времён
gml - язык декларативного описания игровых данных, он нужен чтобы возможно было производить разные операции над данными такие как сборка атласов, конвертация ресурсов на лету, лайтмапы и тд, сам gml строится вокруг pipeline модели : из доступных модулей пользователь строит pipeline под свой проект
ходив вокруг да около недели три, написав кучу кода на цпп оказалось что я изобретаю луа
потому решил всё переделать на lua и оно внезапно взлетело
результат текущего R&D :
https://bitbucket.org/jimon/gml-research-pub/src
сам язык разметки теперь надмножество lua (любой lua файл является gml файлом), что позволяет code-driven способом генерировать декларативные структуры
одной из основных фишек языка разметки является форвардинг полей, те
sprite { transform = transform { x = 10 } } аналогично sprite { x = 10 }
пример примитивного платформера :
https://bitbucket.org/jimon/gml-rese....gml?at=master
я работаю над экспортом в
love2d, но в принципе уже сейчас есть возможность экспортить даже в blitzmax
пока нету одного из главных модулей - оптимизатора который будет смотреть чтобы исключать одинаковые объекты и создавать только уникальные
сейчас все скрипты пишутся в нативном коде, для love2d это lua, но для других движков совсем другое, потому стоит вопрос о необходимости стандартной библиотеки, но она дело очень тонкое, может получится как в monkey : куча ограничений чтобы сделать игру работающую на всех платформах