使用 tolua++ 公开 Ogre 函数

发布于 2024-12-08 14:01:52 字数 262 浏览 2 评论 0原文

我想知道如何公开 Ogre 库函数,例如:俯仰、偏航来旋转相机。我想使用 lua 脚本控制我的应用程序的相机。我正在使用 tolua++ 进行绑定。我为 OgreCamera.h 创建了一个干净的标头,但显然该函数没有暴露,因为当我在 C++ 代码中使用 lua_call 时,程序以退出代码 1 终止。 在我的 lua 脚本中,我编写了语句 pMyCam:yaw(angle),其中 pMyCam 的类型为 Ogre::Camera* 并传递给 lua。有问题的语句是调用偏航。

还有其他的吗

I want to know how do I expose Ogre library functions, for example: pitch, yaw to rotate a camera..I want to control the camera for my application using a lua script. I m doing the binding using tolua++. I created a cleaned header for OgreCamera.h but apparently the function is not getting exposed because when i use lua_call in my C++ code, the program terminates with an exit code 1.
In my lua script I write the statement pMyCam:yaw(angle) where pMyCam is of type Ogre::Camera* and is passed to lua. The problematic statement is the call to yaw.

Are there any other

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

迷途知返 2024-12-15 14:01:52

你寻求的是luabind,至少这就是我在Ogre中使用的基本上刚刚好现在。从语法上来说,它非常简单,你可以公开几乎所有内容,包括重载方法、只读属性、枚举等等,它对我来说非常适合。

我在一个包装引擎中使用它,其中包括 Ogre、CEGUI(如果你也使用它)和其他一些东西,到目前为止,我成功地向 Lua 公开了几乎所有我需要的东西,包括相机、场景。和对象管理。

是的,它被设计为与 C++ 一起使用。

What you seek is luabind, at least that's what I'm using with Ogre basically just right now. It's pretty easy syntax-wise, you can expose nearly everything including overloaded methods, readonly attributes, enums and whatnot and it works perfectly fine for me.

I'm using it in a wrapper engine that includes Ogre, CEGUI (if you're using that as well) and some other stuff as well and so far I managed to expose nearly everything I need to Lua, inlcuding camera-, scene- and object management.

And yes, it's designed to work with c++.

绅士风度i 2024-12-15 14:01:52

现在有一些库允许直接访问 C 库中的函数。

像这样:

Nowadays there are some of libraries that allow direct access of functions in C libraries.

Like these:

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文