资 源 简 介
翻译 maninwest@Codeforge 作者:lxdfigo @ Codeproject这里介绍基于Ogre Graphics Engine, ODE Physics Engine, CEGUI 和其他工具的3D RPG。框架描述和完整源代码见此处:https://github.com/lxdfigo/Space-Knight.背景Space Knight(宇宙骑士) 是我小时后看过的卡通动画,我也是个游戏迷。所以我使用我所学的知识将这个卡通开发为一个 角色扮演游戏RPG。这里是我在游戏中使用的库: Ogre: 使用 Ogre 作为图形引擎。它可以选择 DirectX 或 OpenGL 来渲染场景.OED: 我适用 OgreOde,它结合了Ogre 和 ODE,来构建了游戏中物理世界CEGUI: 用户与构造游戏中的 UI,例如,主菜单/交易菜单/功能菜单等。 3D Max: 游戏的模型使用 3D Max 构建,通过一个插件导出。 DirectShow 和 Fmod: 用于播放音频和视频使用代码该游戏基于多个库。这里是游戏框架的 UML 图。此应用中有多个模块,任务模块/角色模块/AI 模块/UI 模块/工具模块和媒体模块。任务模块控制游戏的任务,包含 BaseMission 类,FirstMission 类等。每个类代表游戏中的一个任务。基本类也控制大多数模块。角色模块控制游戏中的玩家,例如主游戏玩家,宇宙骑士,怪兽 Lada, NPC, 等。这些条目通过条目管理程序管理,并且会检查每个帧中是否冲突。部分角色模块也由 AI 模块控制 AI 模块使用状态机器模拟角色的 AI。 每个有AI 的角
文 件 列 表
Space_Knight
AI
BaseApplication.h
BaseFrameListener.h
BaseSound.cpp
BaseSound.h
CEGUI
OgreCEGUIRenderer.cpp
Dialogue
Dialogue_1.xml
DirectShow.cpp
DirectShow.h
Fmod
fmod.h
GameFrame.cpp
GameFrame.h
Loads
Loads.xml
Main.cpp
MainValue.cpp
MainValue.h
media.cfg
Mission
BaseMission.cpp
Model
BenTi.cpp
ogre.cfg
Plugins.cfg
quake3settings.cfg
resource.h
resources.cfg
Sales
TransMission01Sales.xml
SpaceKnight.aps
SpaceKnight.bmp
SpaceKnight.ico
SpaceKnight.rc
Space_Knight.vcproj
Space_Knight.vcproj.8.00.old
Space_Knight.vcproj.L-6CDDBB2CB5294.Administrator.user
Space_Knight.vcproj.Loki's Computor.Loki.user
Space_Knight.vcproj.Loki-PC.Loki.user
Space_Knight.vcproj.lxdfigo-PC.lxdfigo.user
stadfx.h
StaticThings
Chest01.cpp
Status.xml
Tasks
CurrentTasks.xml
TinyXML
tinystr.cpp
Tools
AllFullMedica.cpp
AI
BaseGameEntity.h
CaneState.cpp
CaneState.h
ChestState.cpp
ChestState.h
DaJiaState.cpp
DaJiaState.h
DBoyState.cpp
DBoyState.h
EntityManager.cpp
EntityManager.h
FeelerState.cpp
FeelerState.h
FlyLaDaState.cpp
FlyLaDaState.h
LaDaBossState.cpp
LaDaBossState.h
LaDaState.cpp
LaDaState.h
MessageDispatcher.cpp
MessageDispatcher.h
SpaceKnightState.cpp
SpaceKnightState.h
SpaceShipState.cpp
SpaceShipState.h
State.h
StateMachine.h
StayLaDaState.cpp
StayLaDaState.h
Telegram.h
WalkWormState.cpp
WalkWormState.h
Space_Knight.sln
Space_Knight.sln.old
UpgradeLog.XML