`

OGRE 初始化时 资源文件的加载

    博客分类:
  • OGRE
 
阅读更多
经过简单的熟悉以后,开始对Sample中Resource和PlugIn 以及 Ogre启动时弹出的 配置选择框 很厌烦,希望只加载自己需要的资源和插件,并跳过那个配置对话框。

OGRE 框架 资源加载的顺序

1. mRoot = new Ogre::Root(mPluginsCfg);     创建root 同时加载 plugIn.cfg里的插件

2. Ogre::ConfigFile cf;   cf.load(mResourcesCfg);    加载资源cfg, 将资源的目录 存入Ogre ResourceGroupManager中去。

3.  mRoot->showConfigDialog(); 弹出配置对话框,选定Rendering Dll, 确定一些配置。
4.  choose Scene Manager, 从前面加载的插件中 选择一个scene Manager.

5.  loadResources Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
     加载资源文件。

自定义的加载方式

1. // create scene root with no config file and plugin
    m_pRoot = new Ogre::Root("");

2. Ogre::ConfigFile cf;  cf.load("E://bin//Debug//resources_d.cfg"); 存入资源目录,(可以删除一些不必要的)

    我们可以通过 Ogre::ResourceGroupManager::getSingleton().addResourceLocation 手动的加入目录。

    比如 Ogre::ResourceGroupManager::getSingleton().addResourceLocation("../../media/materials/programs", "FileSystem", "General");
Ogre::ResourceGroupManager::getSingleton().addResourceLocation("../../media/materials/scripts", "FileSystem", "General");

3. m_pRoot->restoreConfig() ; 我们可以直接使用默认的设置,而跳过对话框配置。

或者 我们可以手动的来加载 m_pRoot->loadPlugin("E:///bin//Debug//RenderSystem_GL_d.dll");

m_pRoot->loadPlugin("Plugin_OctreeSceneManager_d");

// configure
// Grab the OpenGL RenderSystem, or exit
Ogre::RenderSystem* rs = mRoot->getRenderSystemByName("OpenGL Rendering Subsystem");
if(!(rs->getName() == "OpenGL Rendering Subsystem"))
{
    return false; //No RenderSystem found
}
// configure our RenderSystem
rs->setConfigOption("Full Screen", "No");
rs->setConfigOption("VSync", "No");
rs->setConfigOption("Video Mode", "800 x 600 @ 32-bit");

mRoot->setRenderSystem(rs);

从而完成 配置对话框该做的事情。

4. 创建 SceneManager

5. 创建 Camera

6. 创建 Window

7. 初始化 要加载的资源
分享到:
评论

相关推荐

    ogre的资源载入

    资源组是资源管理的核心概念,它们允许开发者将相关资源分组,然后作为一个整体进行加载、卸载和初始化。资源组内部包含两个关键数据结构:资源位置表和资源次序表。资源位置表用于快速查找资源在哪个档案中,而资源...

    win32下初始化OGRE窗口

    `函数来加载资源配置文件,如`resource.cfg`,以确保OGRE能够正确识别和加载所需的纹理、模型和其他资源。 #### 配置渲染系统 为了适应不同的硬件环境,OGRE允许用户选择具体的渲染系统(如Direct3D、OpenGL等)。...

    OGRE配置文件TutorialFramework

    BaseApplication类通常会处理初始化和清理OGRE渲染环境,加载资源,处理窗口事件,以及提供一个框架来管理场景和渲染循环。开发者可以基于这个基类来创建自己的应用程序,重写或扩展其中的方法以满足特定需求。 2. ...

    Ogre+CEGUI模板

    在项目配置中,"Ogre_PATH"环境变量指向Ogre的安装路径,确保编译器和链接器能找到Ogre的相关库和资源文件。"TestOgre.vcxproj*"文件是Visual Studio的项目文件,用于管理和构建工程。".filters"文件定义了项目中的...

    [OGRE3D].rar_OGRE3d openGL_Ogre_ Ogre_ogre_ogre3d

    初始化OGRE时,需要配置渲染系统、窗口大小、是否全屏等参数。`Root`类是整个OGRE框架的入口点,负责初始化和管理所有组件。 通过理解并熟练应用这些知识点,开发者能够有效地利用OGRE 3D引擎构建功能丰富的3D应用...

    MFC中嵌入Ogre

    编写Ogre初始化代码** 在MFC的`CMainFrame`或`CMyDocument`类中,编写Ogre的初始化代码。这通常包括创建`Root`对象,设置渲染系统,加载资源管理器,创建场景管理器,以及创建窗口渲染目标。 ```cpp Ogre::Root ...

    _Ogre3D.rar_Ogre_ Ogre_ogre_ogre3d 教程

    4. **渲染基础**:讲解如何创建窗口,初始化渲染上下文,以及如何绘制几何体到屏幕上。还会涵盖如何设置渲染管线,包括视口、渲染目标和渲染通道。 5. **资源管理**:Ogre3D拥有强大的资源管理系统,可以处理纹理、...

    Ogre插件体系精简版

    1. **初始化阶段**:Ogre引擎启动时,会读取Plugins.cfg文件。 2. **解析配置**:解析文件中的每一行,每一行代表一个插件,包含插件的名称和库文件路径。 3. **加载插件**:根据解析到的信息,动态加载指定的DLL...

    Ogre 示例程序框架分析

    综上所述,Ogre的示例程序框架通过`SampleBrowser`类组织和管理,通过`setup()`和`go()`函数完成初始化和运行过程。理解这一框架对于开发基于Ogre的3D应用至关重要,它展示了如何从无到有构建一个完整的3D图形应用。...

    ogre3d的BasicTutorial345源码

    在`main.cpp`中,会找到Ogre3D的初始化代码,包括创建渲染窗口、设置渲染系统、加载资源等。`Root`类是Ogre3D的核心,它负责整个渲染上下文的管理和配置。 ```cpp Ogre::Root root; root.initApp(false); // 不显示...

    OGRE程序基本流程

    一个典型的OGRE项目通常包括源代码文件、资源文件(如纹理、模型)、配置文件等。TinyOgre.cpp和TinyOgre.h可能代表项目的主程序逻辑和类定义。在项目中,你需要定义一个或多个场景管理类,负责组织和管理3D对象。 ...

    OGRE_ Material Scripts.pdf

    材质脚本文件通常有“.material”扩展名,它们在资源组初始化时被加载。OGRE会在关联该组的所有资源位置中寻找这些文件,并进行解析。如果你希望手动加载材料脚本,可以使用Ogre::MaterialSerializer::parseScript...

    QT_Ogre.zip

    2. **初始化Ogre**:在你的Qt应用中,你需要在适当的时候初始化Ogre3D引擎。这通常在主窗口或视图类的构造函数中完成,通过调用Ogre的`Root`类的初始化方法,并设置渲染窗口。 3. **创建场景管理器**:Ogre中的场景...

    cegui.zip_Ogre_ Ogre_cegui ogre_cegui ogre mfc_ogre_ogre cegui

    1. **初始化Ogre**:首先,我们需要配置Ogre的渲染系统,选择适当的渲染API,设置窗口大小和分辨率,加载必要的资源(如材质、纹理和模型)。 2. **集成CEGUI**:接着,我们需要初始化CEGUI系统,指定字体、图像集...

    ogre-sdk-v2.2.4-vc19-x64.7z

    1. **初始化Ogre**:首先,你需要创建一个`Root`对象,它是Ogre的核心管理类,负责初始化渲染系统、加载插件、设置渲染窗口等。 2. **选择渲染系统**:Ogre支持多种渲染API,如Direct3D11、OpenGL等,通过`Root::...

    ogre 1.10.12 的源码

    - 初始化Ogre引擎,创建场景管理器,设置渲染窗口,并加载资源。 - 创建相机和光源,添加场景对象,编写渲染循环。 4. win10系统兼容性: 提供者提到这个版本已在win10系统上测试成功,这意味着Ogre 1.10.12对...

    OGRE 3D程序设计

    4. **第一个OGRE程序**:引导读者编写第一个简单的OGRE程序,展示如何创建窗口、初始化引擎、加载场景和渲染帧。 5. **场景管理**:讲解OGRE的Scene Manager机制,如何创建、组织和管理场景中的对象,以及如何使用...

    ogre初级教程部分代码

    Ogre项目的代码通常包含初始化、加载资源、创建场景、渲染循环以及清理等部分。这些代码可能涉及到`Ogre::Root`、`Ogre::SceneManager`、`Ogre::RenderWindow`等关键类。 6. **初始化Ogre** 在代码中,会有一个...

    易语言OGRE类库1.1.rar

    - **初始化和关闭**:在程序开始时,需要正确初始化OGRE引擎,设置渲染窗口和设备。程序结束时,需要释放资源并关闭引擎。 - **场景管理**:通过场景管理器组织3D对象,如摄像机、光源、模型和粒子系统等,控制它们...

    ogre_audiere.rar_Ogre_ Ogre

    - **初始化Audiere**:在应用程序的初始化阶段,创建一个Audiere的实例,并指定输出设备,如扬声器或耳机。 - **加载音频文件**:使用Audiere的`openURL`函数加载音频资源,可以是音乐文件或音效文件。 - **创建...

Global site tag (gtag.js) - Google Analytics