【发布时间】:2012-09-08 17:02:45
【问题描述】:
我一直在研究一个基于简单组件的 c++ 和 lua 游戏引擎。目前,所有子系统(如音频和物理)都可以使用 luaL_newlib 使用自己的模块从 lua 调用。
我遇到的问题是 lua 脚本如何调用函数来修改其实体。就像SetPosition() 显然需要在实体实例而不是静态函数上调用。那么有没有办法让我拥有这些实例化函数。
我的一个想法是每个实体都为自己注册函数,并使用其唯一的模块名称。所以它看起来像entity1.Setposition 和entity2.Setposition。是否可以注册,有效地复制这样的功能?
或者是否有另一种方法可以拥有像这样的实例化函数,以便组件可以修改它们所属的实体?
如果我的解释很糟糕,请说出来,我很乐意提供更多信息
【问题讨论】: