5

我是 Ogre 的新手并尝试运行第一个教程,但我遇到了收到错误消息的问题

OGRE 异常(6:FileNotFoundException):找不到“resources_d.cfg”文件!在
../../OgreMain/src/OgreConfigFile.cpp 的 ConfigFile::load 中(第 83 行)

请帮助,它的关键!

另一个问题:

cmake 对安装 Ogre sdk 很重要吗?

4

2 回答 2

6

在 linux 上使用 cmake 编译/安装 ogre 后,这两个配置文件位于

/usr/local/share/OGRE/resources.cfg
/usr/local/share/OGRE/plugins.cfg

只需将两者都导入您的 ogre 项目安装 ogre 后,您的项目不需要 cmake 来帮助您学习教程:

如何使用 ogre 设置 Eclipse:

文件 -> 新建 -> C++ 项目 -> EmptyProject

C/C++ 构建 -> 环境 OGRE_LOC /home/scott/src/ogre_src_v1-7-3

C/C++ 构建 -> 设置

GCC C++ Compiler -> Includes

    ${OGRE_LOC}/OgreMain/include
    /usr/local/include/OGRE
    ${OGRE_LOC}/Samples/Common/include
    /usr/include/OIS

GCC C++ Linker -> Libraries (-l)

    OgreMain
    OgreTerrain
    OIS
    CEGUIOgreRenderer

右键项目->属性->导入

General -> File System -> 

    ONLY import those 4 files from the tutorial project 
           (NOT dist, build, makefiles ...)

        BaseApplication.cpp
        BaseApplication.h
        TutorialApplication.cpp
        TutorialApplication.h

    also import these files :

/usr/local/share/OGRE/resources.cfg
/usr/local/share/OGRE/plugins.cfg

现在您可以编译和运行了!

添加一个 Ogre 模型:

首先执行上述步骤来创建一个 ogre 项目,确保它可以编译。在执行时它会呈现一个黑屏 - 这很好。现在要添加一个模型(一个 Ogre),只需编辑 TutorialApplication.cpp 函数 createScene 显示为:

``

void TutorialApplication::createScene(void) {

Ogre::Entity* ogreHead = mSceneMgr->createEntity("Head", "ogrehead.mesh");

Ogre::SceneNode* headNode = mSceneMgr->getRootSceneNode()->createChildSceneNode();
headNode->attachObject(ogreHead);

// Set ambient light
mSceneMgr->setAmbientLight(Ogre::ColourValue(0.5, 0.5, 0.5));

// Create a light
Ogre::Light* l = mSceneMgr->createLight("MainLight");
l->setPosition(20,80,50);

}

于 2011-08-17T14:08:27.063 回答
1

CMake 对于从源代码构建ogre sdk 至关重要——我不会尝试自己配置安装。如果您使用的是预构建的 sdk,则可能不需要 cmake。

就您的错误而言,恰好是您试图从resources.cfg. 我不知道您的操作系统,但是,请确保您的 resources.cfg 与您的二进制文件位于同一目录中。如果您使用 MSVC 并通过调试器运行它,请确保您的工作目录(在项目属性 -> 调试 -> 工作目录中找到)设置为可执行文件的目录。

于 2011-08-16T16:09:38.703 回答