OgreNewt碰撞开发平台的初始化
2008-11-19 19:53
127 查看
先从这里开始:http://www.ogre3d.org/wiki/index.php/Newton_Game_Dynamics 这个教程实际上已经过时了。上面说适用于Ogre 1.1.x,实际上OgreNewt已经为1.4.x做了更新了。 插一句,Newton是一个物理引擎,Ogre是一个图像引擎,两者由OgreNewt连接起来。 根据这个教程,先到http://www.newtondynamics.com/downloads.html下载了Newton的SDK。 然后在http://walaber.com/index.php?action=showitem&id=9下载OgreNewt。 最后下载Media pack。这个包里面实际上就是编译Demo时需要的一些mesh。但在编译Demo时发现,还缺少很多东西。 安装NewtonSDK,将OgreNewt拷贝到一个你能找到的地方。 依照教程,用VS打开OgreNewt/下的OgreNewt.sln,这个时候就可以看见这样的项目列表了: OgreNewt_Main - this is the library itself, where all classes are defined. Demo01_TheBasics - an extremely simple demo, where you can throw objects at a solid object, and watch them interact. Demo02_Joints - another simple demo, showing TreeCollision bodies, and simple Joints. Demo03_CollisionCallbacks - how to use advanced collision callbacks to control object behavior through the example of a conveyor belt. Demo04_Raycasting - using raycasting with rigid bodies Demo05_SimpleVehicle - how to use the Newton vehicle system Demo06_SimpleBuoyancy - how to use the Newton buoyancy system Demo07_CustomJoints - simple example of how to make your own joints with OgreNewt. Demo08_RagdollExample - an example of how to make skinned ragdolls using OgreNewt. 这个时侯就要开始配置项目的属性了。 首先,在每个项目上点右键选择“属性”。 1.最上面的“配置”要选择“活动(Release)”(选“Debug”是不行的……) 2.“C/C++“——”常规”——“附加包含目录”,添加你安装的OgreSDk目录下的include/和samples/include。比如我添加了"C:/OgreSDK/samples/include;C:/OgreSDK/include;“。这是因为demo里面需要ogre的头文件,以及ogre示例的ExampleApplication和ExampleFrameListener两个类的文件。 3.“链接器”——“常规”——“附加库目录”,添加OgreSDK的lib/。比如我添加了"C:/OgreSDK/lib;”。 按理说现在可以编译、链接成功了,但是运行不了。运行时出现了这些信息: Demo01_TheBasics.exe 中的 0x7c812aeb 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012faf0 处的 Ogre::FileNotFoundException。 Demo01_TheBasics.exe 中的 0x7c812aeb 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012fc20 处的 Ogre::FileNotFoundException。 程序“[3292] Demo01_TheBasics.exe: 本机”已退出,返回值为 0 (0x0)。 不要担心,实际上程序是可以运行的。切换到OgreNewt/demos/bin/release/。双击这里的exe就可以运行demo程序了。 运行程序后你会发现,很多贴图都没有了,物体就是一片白色……不过终究可以运行了……。 如果是在Debug模式下,运行程序后会中断退出,并在Ogre.log的记录的最后一行出现"*** Initializing OIS ***"然后就没有记录了。在Release时就没有这个问题了。 在Release模式下,你也可以查看一下Ogre.log,你会发现里面有一些错误,找不到一些材质,所以运行的时候发生了缺少贴图的情况。 |
相关文章推荐
- 100个windows平台C++开发错误之初始化问题
- 100个windows平台C++开发错误之十四初始化问题
- Linux平台下搭建OgreKit on Android开发环境
- .Net平台下开发中文语音应用程序
- Linux内核与驱动开发学习总结:PCI中线初始化(十一)
- SNF开发平台WinForm之五-高级查询使用说明-SNF快速开发平台3.3-Spring.Net.Framework
- JOffice协同办公开发平台
- 前端开发平台搭建
- DeviceOne 让你一见钟情的App快速开发平台
- Ogre+Opcode实现碰撞检测
- 菜鸟WDF驱动开发系列(1):VM+Windbg调试平台的搭建
- 最强开发资源平台大合集
- AJAX将成为移动Web2.0时代首选开发平台
- WinCE平台搭建--基于数据库的.NET应用程序开发(wince6.0+vs2008+sqlce)
- Android NDK开发环境搭建(Windows7平台)
- 搭建Eclipse+Qt开发平台
- .Net语言 APP开发平台——Smobiler学习日志:在手机应用开发中如何设置全局样式
- NET 平台下的插件化开发内核