【发布时间】:2021-05-27 11:10:07
【问题描述】:
我想用实体组件系统来实现脚本系统,就像在 Unity 或 Unreal Engine 4 中一样。我用 c++ 编写了我的引擎,并希望使用 c++ 作为脚本语言。现在我正在寻找以某种二进制格式存储脚本类的方法,所以我的引擎加载它们,创建实例并使用所需的方法。我知道dll可以用于这个目的,但是有几个问题:你需要编写函数调用约定,(dllimport)等,你不能直接创建类的实例,你需要编写一个函数,它将在您的脚本中创建类的实例。那么如何避免这个问题呢?我知道可以使用宏进行调用约定以使代码更清晰,就像 UE4 一样,但是是否可以在我的引擎中直接创建类的实例而不使用 dll 中的特殊函数?或者有没有其他可以编译c++的用户脚本二进制格式?
【问题讨论】:
标签: c++ scripting game-engine