文档详情

OGRE基础教程基础教程一.pdf

发布:2017-06-18约1.21万字共12页下载文档
文本预览下载声明
文档:教程:基础教程:基础教程一 出自Ogre3D 开放资源地带 跳转到: 导航, 搜索 目录 1 简介 2 从这里开始 3 OGRE 是怎样工作的 o 3.1 场景管理器基础 o 3.2 实体基础 o 3.3 场景节点基础 4 第一个 OGRE 程序 5 坐标和向量 6 添加其它的对象 7 实体深入了解 8 场景节点深入了解 9 额外尝试 o 9.1 缩放 o 9.2 旋转 10 小结 11 Ogre 环境配置 o 11.1 动态链接库(DLLs) 与 插件(Plugins) o 11.2 配置文件 o 11.3 一个更好的调试程序的方法 简介 在这篇教程里,我会向您介绍OGRE 最基础的构架:场景管理器,场景节点和实 体。由于我需要在这篇教程里把OGRE 的基 概念介绍给你,所以我们不会接触 太多的代码。在您阅读这篇教程的同时,您应该自己一点一点的添加代码来体 会代码的作用,只有这样才可以真正理解这些概念。 从这里开始 在这篇教程里,我们将使用已经写好的代码作为模版。除了我们将要在 createScene 函数里面添加的代码之外,您可以暂时忽略其他的东西。在后面 的教程里我会深入讲解OGRE 程序是如何工作的,现在我们只需要从最简单的地 方学起就行了。在您的编译器里创建一个新的工程,然后把下面的代码添加进 去: #include ExampleApplication.h class TutorialApplication : public ExampleApplication { protected: public: TutorialApplication() { } ~TutorialApplication() { } protected: void createScene(void) { } }; #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32 #define WIN32_LEAN_AND_MEAN #include windows.h INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT ) #else int main(int argc, char **argv) #endif { // Create application object TutorialApplication app; try { app.go(); } catch( Exception e ) { #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32 MessageBox( NULL, e.getFullDescription().c_str(), An exception has occured!, MB_OK | MB_ICONERROR | MB_TASKMODAL); #else fprintf(stderr, An exception has occured: %s\n, e.getFullDescription().c_str()); #endif } return 0; } 假如您能够成功编译这段代码,您在运行的时候可以用WASD 键移动,鼠标来转 镜头,ESC 键来退出程序。 OGRE 是怎样工作的 这是一个很广的题目,我们将从场景管理器开始然后进一步了解场景节点和实 体。这三个类是所有OGRE 程序的基石。 场景管理器基础 在屏幕上显示的所有东西都是由场景管理器来管理。当您在场景中添加物体 时,场景管理器会记录这些物体的位置。当您添加摄像机来观看某个场景时, 场景管理器会记录摄像机的位置。当您添加平面、广告牌、灯光时,场景管理 器同样会管理他们。 OGRE 里有很多种场景管理器。有的场景管理器渲染地 面,有的场景管理器渲染BSP 表等等。在后
显示全部
相似文档