首页 > 编程之美 > Ogre中移植Sample_Character到Advanced Ogre Framework
2014
04-05

Ogre中移植Sample_Character到Advanced Ogre Framework

刚开始学习Ogre的时候,用的是BaseApplication这个框架,但是该框架不能满足更大规模的开发需求,比如不能进行游戏场景切换,游戏状态切换,后来我用了Advanced Ogre Framework,这是一个很不错的游戏框架,总共包含17个文件, 使用起来不是太难,可以看下官网上的介绍http://www.ogre3d.org/tikiwiki/tiki-index.php?page=Advanced+Ogre+Framework

Ogre SKD中Sample_Character那个sinbad挺好玩的,花了点时间把它移植到到了Advanced Ogre Framework,可以很容易利用这开发一个小游戏或者虚拟人物漫游系统,至于场景的话可以在3dsmax中构建,然后利用Ogremax插件导出为场景文件,在createscene方法中加入下面三行代码即可导入场景

我在Advanced Ogre Framework新增加的四个文件代码如下,加入的这四个文件实现了可操纵的sinbad:

SinbadCharacterController.hpp

SinbadCharacterController.cpp

上面两个文件主要负责sinbad这个角色的创建

SinbadState.hpp

SinbadState.cpp

上面两个文件创建了一个state,除了加入的这是个文件以外,还需要在MenuState.cpp,PauseState.cpp中各创建一个按钮,Demo.cpp中加入一个状态,具体的可以看下我分享的代码,代码下载地址:

程序运行部分截图:
Ogre中移植Sample_Character到Advanced Ogre Framework - 第1张  | Jianchihu
菜单界面

Ogre中移植Sample_Character到Advanced Ogre Framework - 第2张  | Jianchihu
Sinbadstate界面

最后编辑:
作者:Jianchihu
管理员——低调做事,低调做人

5 Responses to Ogre中移植Sample_Character到Advanced Ogre Framework

  1. Pingback: 徐季所匍

  2. Pingback: Gregory Smith

  3. ohyes says:
    Unknown Unknown Unknown Unknown

    你的ogre SDK是什么版本。我用的1.9 可以生成exe执行文件,但是运行的时候报错Assertion failed!Program: …REOgreSDK_vc11_v1-9-0bindebugOgreOverlay_d.dllFile: ……….ComponentsOverlaysrcOgre…Manager.cppLine: 52Expression: msSingletonFor information on how your program can cause an assertionfailure, see the Visual C++ documentation on asserts(Press Retry to debug the application – JIT must be enabled)线程 0x33f0 已退出,返回值为 3 (0x3)。我怀疑 是不是缺了个Overlay System的初始化。 怎么初始化Overlay System

    • lily6 says:
      Unknown Unknown Unknown Unknown

      我用网上下载的OgreSDK_vc10_v1-8-1的sdk文件配置后立刻运行成功了,ogre SDK1.9前几天试了一开始有些错误,目前运行还有些问题,可以加我qq交流:1665421845。

    • Jianchihu says:
      Unknown Unknown Unknown Unknown

      很抱歉,好久没有登陆博客了,OGRE我已经好久没接触了,那时是毕业设计用到,我记得那时用的是SDK 1.8版本

留下一个回复

你的email不会被公开。

This site uses Akismet to reduce spam. Learn how your comment data is processed.