game objects red2
TRANSCRIPT
-
8/16/2019 Game Objects Red2
1/10
A Data-DrivenGame Object System
GDC 2002
Scott Bilas
Gas Powered Games
-
8/16/2019 Game Objects Red2
2/10
Introduction
Me – Scott Bilas, [email protected]
– Background
You – Sstem arc!itect tpes
– "ired o# #ig!ting wit! staticall tped sstems #or game code
"!e "est Su$%ect – Dungeon Siege
– &'(00 uni)ue o$%ect tpes *i.e. can $e placed in t!e editor+
– &00000 o$%ects placed in our two maps
– Continuous world means ant!ing can load at an time
-
8/16/2019 Game Objects Red2
3/10
Cell Phones?
-
8/16/2019 Game Objects Red2
4/10
Deinitions
Data-Drien
– Meaning/ 1o engineer re)uired – 3ngineers are slow
– Causes designers to !ack around missing
#unctionalit
– Goal/ remoe C4C55 #rom game – 6ine $etween engine and content is alwas moing
-
8/16/2019 Game Objects Red2
5/10
Deinitions !Cont"#
Game 7$%ect *Go+ – 8iece o# logical interactie content
– 8er#orm tasks like rendering, pat! #inding, pat!#ollowing, speaking, animating, persisting
– 39amples are trees, $us!es, monsters, leers,wapoint markers, doors, !eroes, inentor items
– Man are pure logic, neer see t!em *triggers,eleator moers, camera se)uences+
– 3er game !as t!ese in some #orm
-
8/16/2019 Game Objects Red2
6/10
Deinitions !Cont"#
Game 7$%ect Sstem
– Constructs and manages Go:s – Maps ;D:s to o$%ect pointers
–
-
8/16/2019 Game Objects Red2
7/10
$%am&le Class 'ree(inta)e
Object
Missile Spaceship Explosion
FriendFoe-
Missile
HeatSeeking-
MissileEnemySpaceship
Asteroid
-
8/16/2019 Game Objects Red2
8/10
$%am&le Class 'ree*ewan)led
Object
Drawable ollidable hewable
Missile Spaceship Asteroid
-
8/16/2019 Game Objects Red2
9/10
It +on,t +or
"!ere are !undreds o# was to decompose t!eGo sstem pro$lem into classes – "!e are all wrong
– "!e don:t start out wrong, o# course=
Games constantl c!ange –
Designer makes decisions independentl o#engineering tpe structures
– "!e will ask #or t!ings t!at cut rig!t acrossengineering concerns
-
8/16/2019 Game Objects Red2
10/10
.ust Give In 'o Chan)e
>ier t!e closer our code
gets to t!e content ?ill end up regularl re#actoring
Do not resist, will cause worse pro$lems
Aoweer/ C55 does not support t!is er well