clq
浏览(0) +
2009-01-20 16:15:20 发表
编辑
关键字:
[2019-02-22 11:16:43 最后更新]
Ogre游戏引擎鼠标选取物体演示
* 12/31
* 2008
图形图像 | 游戏开发 1725 次查看
* 上一条:给希望成为游戏美术设计师的朋友
* 下一条:所有绘画的核心灵魂——素描知识
-
声明:
该演示只是起到抛砖引玉的作用,转载请保持本文章完整性,请保持作者信息。
由于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)所以先把这个东西发出来,见笑见笑
clq
blog.yam.com/xnaOgre/category/1557742
這是大陸微景公司開發的線上虛擬場景系統,用途是能夠在網頁上呈現虛擬實境的3D場景,使用方式便是將3dMax做好的場景利用oFusion輸出之後,再透過該公司的編輯器輸出檔案放到網頁上,Client端下載瀏覽器外掛之後就可以線上觀看整個場景。
網頁上提供免費版,可以使用所有功能,只是缺少客製化的支援。 該程式在水的呈現方面使用Hydrax lib,物理部分有用到opcode,不過我認為沒什麼用到,只有做一些邊界檢查,此外還用Theora來導入影片檔。場景的部分則是利用了 ofusion的osm檔,不過我記得oFusioncCE版應該是社群版本也就是不能用在商業用途,anyway,總之也就是Ogre的一種虛擬實境應用。
clq
OGRE團隊裡DirectX10的開發者Assaf Raman寫了一個在OGRE程式中嵌入D3D或是OpenGL程式碼的範例,雖然正常來說不建議在使用引擎的程式裡面直接嵌入低階的程式碼,因為通常一個完善的引擎已經提供了大多數會使用到的功能,如果你想使用一個功能卻做不到,有很大的機率是你不會使用(找不到?),或是使用的觀念錯誤(有其他更好的解),就算引擎本身沒提供,也應該由引擎維護者去新增或是修改。倘若你真的有特殊需求或是想做些實驗,那這個範例或許會對你有用處。
http://assaframan2.googlepages.com/NativeRenderGLAndD3d9.zip
NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.