Escolar Documentos
Profissional Documentos
Cultura Documentos
Introduction
This article describes each of the major systems that are present in Robot Game
mini-game. Understanding these systems will help you to modify or re-use the
functionality provided by the Robot Games source code.
Most of this article is presented as diagrams that illustrate the relationship between
various classes, objects, structures, and members. These diagrams will aid you as
you explore the Robot Game source code. For more information about the function
of these classes, refer to the comments in the code, particularly the block comment
at the beginning of a class declaration.
Project Organization
This is the basic layout of the Robot Game mini-games projects:
GameNode
GameSceneNo
de
GameModel
GameAnimateM
odel
GameUnit
GamePlayer or
GameEnemy
Game Project
Classes
FrameworkCore
ResourceMana
ger
GameResource
CollisionContex
t
CollideElement
InputManager
InputCompone
nt
ParticleManager
ParticleSequence
SoundManager
SoundElement
GameScreenMana
ger
GameScreen
Viewer
RenderContext
ViewCamera
scene3DRoot
(GameSceneNod
e)
scene2DLayer
(GameSceneNod
e)
scene2DOverla
y
(GameSceneNo
de)
CameraBase
Viewport
Notes
ParticleSequenceI
nfo
TimeSequenceInfo
(1 - n)
ParticleInfo
(1)
TextureSequence
(0 - 1)
scene3DRoot
ParticleSequen
ce
ParticleSequenc
eInfo
TimeSequence
(1)
TimeSequence
Data
(1 n)
Referenc
e
Particle
(1 - n)
Node
TimeSequence
Info
Owner
(GameSceneNo
de)
sceneRoot
sceneMesh
(GameSceneNo
(GameMesh)
de)
TextureSequen
scenePointSpri
ce
te
(0 1)
(GamePointSpr
ParticleObject
(1 n)
sceneSprite3D
(GameSprite3D
)
Non-node
member
sceneBillboard
(GameBillboard
)
LoadingScreen
(GameScreen)
VERSU
S
VersusReadyScre
en
(GameMenuScre
en)
EXI
T
End of program
FirstStageScreen
(SingleStageScre
en)
VersusStageScre
en
(BaseStageScree
n)
LoadingScreen
(GameScreen)
SecondStageScr
een
(SingleStageScre
en)
GameScreen
BaseStageScreen
GameLevel
GamePlayer
GameSkybox
GameEnemy
GameWorld
TracerBulletManag
er
GameItemBox
TracerBullets
SingleStageScreen
FirstStageScreen
VersusStageScreen
SecondStageScree
n
GameWeapon
GameWeapon
GameSceneNo
de
modelWeapon
(GameModel)
GameWorld
GameModel
GameSkybox
GameAnimateMo
del
GameItemBox
GameUnit
GamePlayer
GameEnemy
EnemyMech
EnemyTank
EnemyBoss
aiAttack
aiAttack
(OnAIAttackEvent)
(OnAIAttackEvent)
Attack time is
over.
The target is
on the left
side.
aiTurnLeft
aiTurnLeft
(OnAITurnLeftEve
(OnAITurnLeftEve
nt)
nt)
The target is
within the
shooting range.
There is no
obstacle in front.
There is an
obstacle in
front.
aiSearch
aiSearch
(OnAISearchEvent)
(OnAISearchEvent)
Turning right is
complete.
The target is on
the right side.
The target is
outside the
shooting range.
Turning left is
complete.
aiTurnRight
aiTurnRight
(OnAITurnRightE
(OnAITurnRightE
vent)
vent)
Movement is
complete.
There is no
obstacle in front.
aiMove
aiMove
(OnAIMoveEvent)
(OnAIMoveEvent)
There is an
obstacle in front.
Collided with
other mech while
moving.
AIBase object
Condition
Change
<model>.FBX
Content/Models/Mech/Players
(1)
<animation>.Animation
Content/Animation/Players/
(model)
(0 - n)
<weapon>.spec
Content/Data/Players
(1)
<enemy>.spec
Content/Data/Ene
mies
(1 - n)
<model>.FBX
Content/Models/Mech/Enemies
(1)
<weapon>.spec
Content/Data/Playe
rs
(0 - n)
<itemBox>.spec
Content/Data/Items
(0 - n)
<model>.FBX
Content/Models/Weapons
(1)
<animation>.Animation
Content/Animation/Enemies/
(model)
(0 - n)
<weapon>.spec
Content/Data/Enemies
(1)
<model>.FBX
Content/Models/Items
(1)
<model>.FBX
Content/Models/Weap
ons
(1)