游戏开发论坛

 找回密码
 立即注册
搜索
查看: 6794|回复: 11

请教关于exampleapplication.h这个头文件的问题

[复制链接]

1

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2012-3-27 15:50:00 | 显示全部楼层 |阅读模式
本人新手,问问各位大侠,我在一个简单的空的程序里加入#include "ExampleApplication.h"这个头文件,即出现addSubRenderState不是Ogre::RTShader::RenderState的成员和setSceneManager不是Ogre::RTShader::ShaderGenerator的成员的错误,这是为什么,各位大侠帮帮忙。 [em4]

0

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2012-3-27 15:56:00 | 显示全部楼层

Re:请教关于exampleapplication.h这个头文件的问题

把完整的代码贴出来,看一下

1

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
 楼主| 发表于 2012-3-27 16:00:00 | 显示全部楼层

Re:请教关于exampleapplication.h这个头文件的问题

#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;
}

0

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2012-3-27 16:48:00 | 显示全部楼层

Re:请教关于exampleapplication.h这个头文件的问题

我把代码放到我这里试了一下,只处理了这个问题:把倒数第十行的“MB_IConERROR”改为“MB_ICONERROR”,然后就编译通过了。

先问下你是不是用VS2008编译的?
如果是,建议处理的方法:1、把“MB_IConERROR”改为“MB_ICONERROR”,如果不行,参考2
            
                2、确定整个工程只有这一个源文件,并且只有这些代码。 如果不行,把新的错误贴出来看下。

               

0

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2012-3-27 16:52:00 | 显示全部楼层

Re:请教关于exampleapplication.h这个头文件的问题

晕...3楼的“MB_IConERROR”改为“MB_ICONERROR”,即全部大写。  (我怎么写错了?)

1

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
 楼主| 发表于 2012-3-27 17:09:00 | 显示全部楼层

Re:请教关于exampleapplication.h这个头文件的问题

MB_IConERROR 我程序是全部大写,怎么我贴上来时变成部分小写了,奇怪了

1

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
 楼主| 发表于 2012-3-27 17:17:00 | 显示全部楼层

Re:请教关于exampleapplication.h这个头文件的问题

xianlan你是怎么配置的?我是用2008的,然后用了ogresdk 7-4,整个工程只有一个原文件,只有这些代码,结果还是一样。

0

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2012-3-28 15:50:00 | 显示全部楼层

Re:请教关于exampleapplication.h这个头文件的问题

估计这个论坛有点BUG,将大写弄成了小写,可为什么偏偏是这两个字母?奇怪....
你用的软件包,先确保OGRE引擎成功编译了,因为我看那个错误好像是引擎本身里的函数出了问题。 先试试软件包里那些例子是不是可以成功运行,如果不行,就是引擎还没有生成成功;如果可以,问题就有点复杂了。  网上有很多VS2008下编译OGRE的例子,还有配置问题,你先试试吧,有问题再找我。

1

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
 楼主| 发表于 2012-3-28 23:50:00 | 显示全部楼层

Re:请教关于exampleapplication.h这个头文件的问题

我现在例子程序是编译过去并运行了,但是这个程序就是编译不过。头大啊。addSubRenderState和setSceneManager这两个在哪里有定义啊,我找半天没找到。

0

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2012-3-29 16:36:00 | 显示全部楼层

Re:请教关于exampleapplication.h这个头文件的问题

只在“ExampleFrameListener.h”里找到“renderState->addSubRenderState(perPixelLightModel)”,函数定义的地方没找到。

“setSceneManager”在“OgrePagedWorldSection.h”里。

你试试其它程序,因为你这段程序代码没有错误,引擎里的代码内容最好不要修改。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-2-28 17:38

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表