您的位置:首页 > 其它

Ogre游戏引擎鼠标选取物体演示

2011-08-20 20:18 441 查看
Ogre游戏引擎鼠标选取物体演示

韩举(喝水不上火)

http://www.hjpdiy.com

http://hjblog.blogchina.com

声明:

该演示只是起到抛砖引玉的作用,转载请保持本文章完整性,请保持作者信息。

由于Ogre推出了最新的Release1版,为了适应该版本所以延迟了几天,不过还好问题解决了,主要是(GUI方面的)。

Ogre是开源的图形渲染引擎见http://www.ogre3d.org,该引擎很有名,在网上可以找到很多相关的信息。

言归正传,这个演示程序演示了在Ogre中进行鼠标选取物体,而且还能检测出鼠标具体击中了该物体的哪个面,用专业点的说法就是"射线与面(三角型)的碰撞检测"。

注意:

该程序采用Esc键退出。

该演示程序为VC7.1(2003)工程,需要最新的Ogre 1.0.0 Release的支持。

编译前的目录设置:(注意下面目录为我机器目录,请设为你自己的目录)

包含文件目录(include)

D:/OgreRc1/ogrenew/Dependencies/include/

D:/OgreRc1/ogrenew/Dependencies/include/CEGUI

D:/OgreRc1/ogrenew/OgreMain/include

库文件设置(lib)

D:/OgreRc1/ogrenew/OgreMain/lib/debug

D:/OgreRc1/ogrenew/Dependencies/lib/Debug

重点函数

getClickAt函数:该函数主要是调用Ogre的Ray检测判断哪个物体被选中,该函数可以用于在多个物体中判断鼠标选中的物体。

PickTest函数:该函数用于判断"鼠标是否选中某个物体(调用getClickAt函数),以及选中该物体的哪个面"。

HJSDK命名空间:我自己仿照Ogreode写的碰撞检测引擎,用来检查碰撞面。

代码下载(编译后如果不能正常运行,请把可执行文件复制到 /ogrenew/Samples/Common/bin/Debug/下)

http://www.hjpdiy.com/docdoc/OgrePickTest.rar 注意该文件已经针对(OGRE
1.0.0 Final Feb 23, 2005 - 03:44 PM by sinbad)进行了修正。











可能的问题:

对于有骨骼动画的mesh可能不能正常识别。

其实一开始想写个简单的 "3d魔方程序"然后发布出来,结果现在突然想学学Cg动画(maya)所以先把这个东西发出来,见笑见笑
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: