
OGRE
文章平均质量分 59
NO-24
有追求的码农
展开
-
ogre在VS2005或者VS2008下的配置和程序运行正常运行
1.到ogre官网上下载ogre的SDK和对应的Dependencies,当然这两个程序包要和你的VS版本对应。下载一个DirectX包。 2.将SDK解压到某一目录下,将Dependencies解压后所得到的文件夹内的两个文件拷贝到SDK解压后的文件夹内。解压DirectX包到某一目录下。 3.打开VS,选择tools->options->projects and solutio原创 2010-04-13 10:47:00 · 1402 阅读 · 0 评论 -
ogre里面的灯光
实现的效果是一闪一闪的灯光,像警报器一样。代码: #include "ExampleApplication.h"#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32#define WIN32_LEAN_AND_MEAN#include "windows.h"#endif Light* mLight;SceneNode* mLightNode =原创 2010-04-27 22:22:00 · 2130 阅读 · 0 评论 -
ogre中缓冲(buffered)输入方式和非缓冲(unbuffered)输入有什么区别?
unbuffered:不断的响应按键信息,直到按键放开。例如,按下上下左右,使得角色持续移动。一般来讲适合于3D场景漫游过程,当在每帧渲染之前,系统捕获输入设备状态,并根据这些状态对场景中的物体和摄象机进行控制。 buffered:在一个按键放开之前,只处理一次输入信息。例如呼出主菜单。适合于GUI界面的情况(如设置菜单),输入设备状态可以被发送到各GUI元素进行处理(如按钮被转载 2010-04-29 19:42:00 · 1140 阅读 · 0 评论 -
ogre的学习资料及网站
我是去年开始接触并学习ogre的,周围没有人学过ogre,因此我是完全自学。现在介绍一下我的学习资料及一些有用的网站。 学习资料:(在网上都可以下载到,我就不附链接了)OGRE3D从新手到入门:学习ogre的最基本中文教程。OGRE_使用指南:中文ogre的函数简单介绍。ogre-howto:小的ogre学习点。Ogre场景组织分析,Ogre的消息机制,Ogre的渲染系原创 2010-05-03 09:16:00 · 2474 阅读 · 1 评论 -
在ogre里面显示二维图片
最近我想在ogre里面实现这样的功能:指向一个物体,显示一张二维图片,介绍该物体的相关信息。在ogre社区找到了解决办法,如下: 创建一个2D长方形:Rectangle2D *rect = new Rectangle2D(true);设置长方形大小: rect->setCorners(-0.5f,0.5f,0.5f,-0.5f); 设置材质、渲染队列等: rect->set转载 2010-05-02 17:19:00 · 3016 阅读 · 0 评论 -
overlay的用法
这里使用了ogreCore的LoadingOverlay获得Overlay:Overlay* pOverlay = OverlayManager::getSingleton().getByName("Core/LoadOverlay"); 显示Overlay:pOverlay->show(); 隐藏Overlay:pOverlay->hide(); 获得Ove转载 2010-05-02 18:35:00 · 12777 阅读 · 0 评论 -
亲手写程序显示overlay
1.在ogreSDK的安装目录的子目录media/materials/textures下添加一张图片:hfut.jpg 2.在ogreSDK的安装目录的子目录media/materials/scripts子目录下,有个文件名为Example.material,往这个文件中添加如下的伪c++代码:material Examples/Test{ technique { pass {原创 2010-05-02 18:57:00 · 1427 阅读 · 1 评论 -
error C2661: “Ogre::AllocatedObject:perator new”
我建立了一个MFC SDI程序,在初始化程序的时候m_OgreRoot = new Root("plugins.cfg", "OgreMFC.cfg", "OgreMFC.log"); 出现错误 error C2661: “Ogre::AllocatedObject:perator new”: 没有重载函数接受 3 个参数 (使用的是VS2005+ogre) 解决办法:注释掉转载 2010-05-25 09:29:00 · 2066 阅读 · 0 评论 -
将ogre 嵌入到 Qt中
<br />我用的环境是VS2008+Qt<br />1,新建一个Qt Application,除了main.cpp文件以外,将其它东西全部删除。<br />2,添加几个文件如下:<br />FOgreWidget.h:<br />#include <QWidget><br /><br />// 如果为假就返回<br />#ifndef FALSE_RETURN<br />#define FALSE_RETURN(h, r) if(!h) return r;<br />#endif<br />#ifndef转载 2010-06-01 09:16:00 · 7772 阅读 · 20 评论 -
ogre中的鼠标拾取
这在ogre的教程里面都有讲到,我在这里只是实现一个鼠标拾取功能,而不是很复杂的集成在一起。这样可以很好的掌握和拿过来使用。 我的代码: #include #include #include #include "ExampleApplication.h" class MouseQueryListener : public Exa原创 2010-04-26 17:00:00 · 3741 阅读 · 1 评论 -
ogre的Demo_CameraTrack例子程序的问题
我的程序里面想实现摄像机自动跟踪的要求,然后去看了Demo_CameraTrack这个例子程序,去发现camera的转动不对。 原来是要对绑定camera的节点进行操作,而不是对camera操作,所以我重载了ExampleFrameListener等类。 下面是我的代码,基本上都是ogre最简单的代码,相信大家可以看明白。 #include "Example原创 2010-04-22 19:19:00 · 1897 阅读 · 0 评论 -
CEGUI中的RadioButton简单用法
最近想在ogre程序里添加layout,用于界面展示。只是一个简单的layout,上面有几个简单按钮控件。如下图: PolygonMode下有两个互斥选项Wireframe和Solid。具体实现过程如下:初始化: //线框模式的设置 static_cast(CEGUI::WindowManager::getSingleton().getWindow("sanh原创 2010-04-22 10:53:00 · 2291 阅读 · 0 评论 -
单文档 多视图中 如何屏蔽分割条的操作 和设置分隔条的大小
1.屏蔽分隔条的操作:我们自己新建一个generic class 继承于CSplitterWnd。然后为这个类添加消息响应函数:LButtonDown,OnMouseMove,OnSetCursor,并在这些消息响应函数中不做任何操作。 2.而设置分割条的大小和形状,是通过设置这几个变量的值来实现的:m_cxSplitter , m_cxSplitterGap , m_cy原创 2010-04-13 11:05:00 · 2303 阅读 · 3 评论 -
ogre在VS2005英文版下出现“应用程序初始化失败”错误的解决办法
我刚学ogre时候,装上ogre的SDK以后,在VS2005下配置好环境以后,编译运行它的例子程序,却提示错误“应用程序正常初始化(0xc0150002)失败”。我在网上看了好多解决办法以后,得到如下的解决方法: 我装的是VS2005英文版,先装VS80sp1-KB926601-X86-ENU,再装vcredist_x86,最后装VS80sp1-KB971090-X86-INT转载 2010-04-13 10:38:00 · 1194 阅读 · 0 评论 -
“mt.exe : general error c101008a: Failed to save the updated manifest to the file”错误的解决办法
今天在编译ogre程序时,出现了这个错误。上网查了一下,找到了它的解决办法。解决的方法:点class view中的工程,选右鍵,再点clean就可以了; 或者是 build->clean solusion。转载 2010-04-14 19:19:00 · 8267 阅读 · 1 评论 -
ogre+MFC
最近要写个程序:将ogre嵌入到MFC中,在一个单视图文档中利用ogre进行模型的展示。再看完别人的代码后,我写了自己的代码。现在将我的代码贴出来,主要是改变对应view的.cpp文件和.h文件。以方便大家初学ogre时,以此为模板在MFC下进行ogre开发。 OgreMFCView.h // OgreMFCView.h : COgreMFCView 类的接口原创 2010-04-14 22:27:00 · 5801 阅读 · 35 评论 -
CEGUI显示中文
最近在学习CEGUI,想在它里面显示中文。在网上找了很多资料,发现这篇最好用。 在使用CEGUI中,一直没发现不能直接显示中文,后来在网上偶然看到,才发现这个问题!然后在网上google了半天,自己解决了这个问题。 1.找到一个中文字体,以微软黑体为例:找到C:/WINDOWS/Fonts目录下的"simhei"文件,拷贝到Ogre字体目录(如D:/ogre/Sample转载 2010-04-20 21:16:00 · 1255 阅读 · 0 评论 -
OGRE手动控制骨骼动画
在ogre中,动画主要有骨骼动画,变形动画,姿态动画。在我们使用骨骼动画的时候,通常是在maya、3dmax等动画软件中做的动画,让其存入.Skeleton文件中,然后在程序中导入这段动画。我们还可以手动控制每段骨骼的动作:范例:用ogre的向导程序生成一个sample:(1)首先,添加全局变量:Bone *manuallyControlledBone = NULL;(2)在cre转载 2010-04-21 12:16:00 · 1727 阅读 · 0 评论 -
OgreXMLConverter
OgreXMLConverter介绍:这个工具可以将二进制的.mesh和.skeleton文件转化为XML,反过来也行。它可以查看mesh文件的内容,也可以很容易的改变mesh的数据。很多建模的人将mesh导出为XML格式,是因为它处理起来比较简单。而OgreXMLConverter又能从mesh得到二进制格式文件。除了简单性,OgreXMLConverter的另一个优点是它在转化mesh时可翻译 2010-04-21 10:22:00 · 3144 阅读 · 0 评论 -
OgreXMLConverter,CeguiMeshViewer,CELayoutEditor 0.6的安装后基本用法
OgreXMLConverter的用法:安装目录:D:/OgreCommandLineTools将待转化的mesh,xml,skeleton文件拷贝到该文件夹下运行:cmd->d:->cd OgreCommandLineTools->OgreXmlConverter a.mesh (注释:这样基本上就行了 它会默认转化为a.xml 如果你要加些限制 可以在这句原创 2010-04-21 13:11:00 · 2754 阅读 · 0 评论 -
球面点三维坐标到纹理二维坐标的转换
<br /> <br />把全景图像贴在一个固定半径的三维球体上,这样该视点空间就建立起来了。这里的固定半径对应固<br />定的焦距。<br />三维球体的半径为r,水平转动角度为h([0,2PI]),上下转动角度为p([-PI/2,PI/2]),所以球面上一<br />点的三维坐标sphere(x,y,z)=(r*cosp*cosh,r*cosp*sinh,r*sinp)。<br />反向变换有p=arcsin(z/r),h=arctan(y/x)。<br />当把p对应到纹理的V方向,把H对应到纹理转载 2010-10-29 09:42:00 · 5981 阅读 · 1 评论