0

我已经做了无数次尝试来让它工作,但我所做的一切都会给我运行时错误。我一直在尝试让资产管理器来管理我的游戏引擎的内容,并且我正在使用 lua 和 luabind 来编写脚本。让一切编译,绑定类和变量,以及从 lua 中取回基本变量,到目前为止都没有问题。

我的问题是我正在使用 std::vector 来存储我的资产类的实例,并且向量似乎与 luabind 相处不融洽。我知道我需要这个向量,因为我的 C++ 程序将使用它进行渲染和其他事情

当我绑定我的管理器类和变量(包括包含我的资产类的向量)时,一切都编译并运行良好。在我的 lua 脚本中,我可以成功创建新对象,但是当我尝试访问它们时,出现运行时错误。

总结一切:

我有一个类,其中包含游戏对象的信息或有关其他一些数据的信息。

我有另一个包含资产类向量的类。

当我尝试像访问常规 lua 表一样访问此向量时,出现运行时错误。

那么我应该在 C++ 和 luabind 中做什么才能修改资产管理器类中的类?

4

1 回答 1

2

您可能需要将向量类型本身与一些相关方法绑定,或者尝试 Luabind 的return_stl_iterator,它提供了对 STL 兼容容器的迭代(但不索引)。

如果您需要更多帮助,您的绑定代码及其类型会很有用。

于 2010-03-09T03:35:20.233 回答