Game Development - Calvin College

advertisement
CS 352:
Computer Graphics
Game
Development
Game Development
Interactive Computer Graphics
Computer Games

Value of games?




Designed experience
Science of engagement
Popular cultural medium
Big business
Game Development
Interactive Computer Graphics
Game Development

Many aspects:








Experience design—UI, gameplay, narrative
Cinematics
Artwork—3D modeling, surfacing, lighting,
environment, animations, sound
Programming—graphics, UI, physics, AI,
networking, game tools
Level design
Sound engineering
Testing
Maintenance (bug fixing, adding levels and features)
Game Development
Interactive Computer Graphics
Game Development




Budget typically $20 million,
as high as $40 million
Most games don’t make a profit
Small indie companies spring up
and die out frequently
High expectations




1980s: a single programmer might do a game
Now, dozens or hundreds of people might be involved
Still, it’s possible for individuals or small teams to do
small games (World of Goo – 2 people)
Mobile games are changing the industry
Game Development
Interactive Computer Graphics
Casual Games

Unity Technologies says:



Casual games: a growth segment
1-3 developers, 3-9 months
A casual game can make $100,000 or more
Game Development
Interactive Computer Graphics
Software for Game Development







Game engine, physics engine
Level design
3D Modeling
Animation
Image, audio, video processing
Asset management
Now there is a secondary market for game
engines, physics engines, tools, models,
animations, etc. making development easier
Game Development
Interactive Computer Graphics
Working in the Game Industry

Horror stories



Gaming Industry – Do not want
7 reasons you don’t want to . . .
E.A. Spouse
Game Development
Interactive Computer Graphics
Unity3D




Popular commercial game engine
Initial release in 2006
Cross platform
Freeware license with 80% of functionality in
2009 disrupts game engine market
Game Development
Interactive Computer Graphics
Unity3D demo









Scene: all objects, graphical
Hierarchy: all objects, list
Project: file structure
Inspector: detailed view of current object
Game view
Layouts
Navigation (F-frame)
Inspector
Parenting
Game Development
Interactive Computer Graphics
Workshop: Open Source and Freeware
Software for Game Development
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Proposed Game to
Assembly
•
Your hero is in the entry
of a maze and must find
the key and the exit to
open the main gate
•
The maze have different
pitfalls, monsters and
you run against the time
5
Wednesday, March 9, 2011
5
Game Development
Interactive Computer Graphics
3D Game Development
Pipeline
2D Textures
GIMP
Create/Edit
Audacity
Terrain
Generation
Audio Effects
Start
3D Modeling
SketchUp
3D Models
Integrate
Export
Formats
Create
Blender
Evolver
Animate
Animeeple
Loaded
Objects
Heads
Up
Display
Camera
Control
Character
Control
Sound
Effects
Collision
Detection
Enemies
Control
Scene
Lights
Lights
Control
Programming Scripts
JavaScript
3D Game Engine
Unity
Used Software
Open Source
Characters
Freeware
End
Low cost
4
Wednesday, March 9, 2011
4
Game Development
Interactive Computer Graphics
Trail Map
2D Textures
GIMP
Create/Edit
Audacity
Terrain
Generation
Audio Effects
Start
3D Modeling
SketchUp
3D Models
Integrate
Export
Formats
Create
Blender
Evolver
Animate
Animeeple
Loaded
Objects
Heads
Up
Display
Camera
Control
Character
Control
Sound
Effects
Collision
Detection
Enemies
Control
Scene
Lights
Lights
Control
Programming Scripts
JavaScript
3D Game Engine
Unity
Used Software
Open Source
Characters
Freeware
End
Low cost
14
Wednesday, March 9, 2011
14
Game Development
Interactive Computer Graphics
About SkecthUp
•
Initial release in 2000 by a startup
@Last Software under concept: “3D
for everyone”
•
In 2006 Google acquires the
company
•
•
Current release is Sketchup 8
•
Freeware license could be extended
to the professional version for $495
USD
•
http://sketchup.google.com
Supports Windows and Apple Mac
OSX
8
Wednesday, March 9, 2011
8
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Trail Map
2D Textures
GIMP
Create/Edit
Audacity
Terrain
Generation
Audio Effects
Start
3D Modeling
SketchUp
3D Models
Integrate
Export
Formats
Create
Blender
Evolver
Animate
Animeeple
Loaded
Objects
Heads
Up
Display
Camera
Control
Character
Control
Sound
Effects
Collision
Detection
Enemies
Control
Scene
Lights
Lights
Control
Programming Scripts
JavaScript
3D Game Engine
Unity
Used Software
Open Source
Characters
Freeware
End
Low cost
21
Wednesday, March 9, 2011
21
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
About Animeeple
•
Founded in 2008 by Okan Arikan and
and Leslie Ikemoto
•
Concept “easy to use character
animation tool”
•
•
•
Current release 0.4.15
•
•
Good tutorials & documentation
•
http://www.animeeple.com
Supports Windows and Apple Mac OSX
Freeware License could be extended to
export FBX for $49 USD
Useful library / store of animations and
characters
16
Wednesday, March 9, 2011
16
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Trail Map
2D Textures
GIMP
Create/Edit
Audacity
Terrain
Generation
Audio Effects
Start
3D Modeling
SketchUp
3D Models
Integrate
Export
Formats
Create
Blender
Evolver
Animate
Animeeple
Loaded
Objects
Scene
Lights
Heads
Up
Display
Camera
Control
Character
Control
Sound
Effects
Collision
Detection
Enemies
Control
Lights
Control
Programming Scripts
JavaScript
3D Game Engine
Unity
Used Software
Open Source
Characters
Freeware
End
Low cost
37
Wednesday, March 9, 2011
37
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Unity
•
•
Initial release in 2006
•
•
Current release is 3.3
•
Freeware License with 80% of
functionalities / $1500 USD for
Unity Pro.
In 2009 democratizes it use
with a freeware licensee and
disrupts the market
Windows, Mac OSX, iOS4,
Android, XBOX, PSP3,
Nintendo
23
Wednesday, March 9, 2011
23
Game Development
Interactive Computer Graphics
Unity Advantages
• Full game development engine targeting
multiple platforms
• Asset centered rather than code centric
• Programs in JavaScript or C#
• Many tutorials and documentation support
24
Wednesday, March 9, 2011
24
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Unity Conceptual
Framework
Components
S
c
r
ip
t
Assets
Game Object
Assets
Assets
Scene
Game Object
Unity Project
27
Wednesday, March 9, 2011
27
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Components
•
Are the building blocks
of Game Objects
•
They can represent
•
•
•
Component
Components
have variables
Visible entities
Meshes
Materials
Cameras
Terrain
Data
Particle
Systems
Lights
Abstract entities
Multiple components
can be attached to
Game Objects
Visible Entities
Abstract Entities
31
Wednesday, March 9, 2011
31
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
Game Development
Interactive Computer Graphics
About Scripts
•
They can be in JavaScript
or C#
•
It is possible to have
different scripts to
support parallel
processing
•
U
n
it
y
S
c
r
ip
t
s
http://unity3d.com/
support/documentation/
ScriptReference/
index.html
Scripts are attached
to Game Objects
U
p
d
a
t
e
(
)
F
ix
e
d
U
p
d
a
t
e
(
)
B
y
d
e
fa
u
lt
e
x
e
c
u
te
d
e
a
c
h
fr
a
m
e
E
x
e
c
u
te
d
e
a
c
h
tim
e
o
fa
P
h
y
s
ic
s
S
ta
te
Is
th
e
b
o
d
y
o
f
th
e
th
r
e
a
d
Is
o
th
e
rp
o
s
s
ib
le
th
r
e
a
d
A
G
a
m
e
O
b
je
c
tc
a
n
b
e
k
ille
d
c
a
llin
g
its
fu
n
c
tio
n
D
e
s
t
r
o
y
(
)
39
Wednesday, March 9, 2011
39
Game Development
Interactive Computer Graphics
Scripts Life Cycle
Game
Begin
During
Game
Destroy
is called
Awake()
Update()
OnDestroy()
+Is like the
constructor of a
GameObject
+Initialize variables
+Executed only
one time
Called every frame
LateUpdate()
+When other
GameObject script
calls to destroy an
object you can
finalize variables
Called every frame
Start()
Game
End
Inter object
initialization
40
Wednesday, March 9, 2011
40
Download