WORKFLOWS FOR NEXT-GEN 3D GAMES AND INTERACTION

Arya MirΨυχαγωγία

1 Φεβ 2012 (πριν από 5 χρόνια και 7 μήνες)

1.559 εμφανίσεις

WORKFLOWS FOR NEXT-GEN 3D
GAMES AND INTERACTION
@Michael_Plank
@Michael_Plank
blog.deltastrike.org
ABOUT ME
Michael Plank
(Austria)
Studied computer science (MSc)
Software Developer, Product Owner & Evangelist for
FDT  Powerflasher
Co-founded Pro 3 Games developing Delta Strike
Love snowboarding :)
@Michael_Plank
blog.deltastrike.org
AGENDA
3D Basics

Terminology (Vertex, Face, Polygon, ...)

Shading, Lighting, Texturing
From 2D to 3D

Display List vs 3D Scene Graph

3D Tools and Libraries
@Michael_Plank
blog.deltastrike.org
AGENDA
Workflow:
From Concept Art to 3D In-Game Asset

Modeling, Texturing, Importing
Advanced 3D Topics

Postprocessing, Animation, Particles
Pros/Cons of 3D Web Technologies
3D BASICS
Terminology, Shading, Lighting, Textures
@Michael_Plank
blog.deltastrike.org
TERMINOLOGY
Vertex
(pl.: Vertices)
Face
Edge
Polygon Mesh
P( )
x
y
z
@Michael_Plank
blog.deltastrike.org
PRIMITIVES
Cube
Sphere
Torus
Cylinder
Cone
@Michael_Plank
blog.deltastrike.org
PIPELINE
2
Die Pipeline
Modeling
Output
inputdevices
modeler
Rendering
transformations
projection
visibility
rasterization
shading
devicedrivers
outputdevices
clipping
@Michael_Plank
blog.deltastrike.org
TRANSFORMATION
4
Motivation
4
Motivation
position object
in object space
add object to
world space
transform in
object space
transform in
world space
project to screen
space (2D)
Screen
Eye
Object2
World
Object1
Object
@Michael_Plank
blog.deltastrike.org
PROJECTION
19
P(xyz)
P'(x'y'z')
E(00–d)
x
y
z
P
P'
d
z
x
x'
x'=
x∙d
z+d
y∙d
z+d
y'=z'=0
x'
:
x
=
d
:
(
d
+z)
Perspektivische Projektion

Isometric

Dimetric

Trimetric

Perspective
@Michael_Plank
blog.deltastrike.org
CULLING
9
Culling Beispiele
View frustum
Detail
Backface
P
or
t
al
Occlusion
@Michael_Plank
blog.deltastrike.org
LIGHTING
lightsources
direct
indirect
point light spot light directional light
ambient light
@Michael_Plank
blog.deltastrike.org
SHADING
Flat
Gouraud
Phong
@Michael_Plank
blog.deltastrike.org
TEXTURING
u
v
0
1
1
@Michael_Plank
blog.deltastrike.org
TEXTURING
FROM 2D TO 3D
2D/3D Scence Graph, Tools & Libs
@Michael_Plank
blog.deltastrike.org
COORDINATE SYSTEM
translate x, y
scale
rotate
translate x, y, z
scale x, y, z
rotate x, y, z
2D
3D right handed
3D left handed
x
y
x
x
y
y
z
z
@Michael_Plank
blog.deltastrike.org
DEPTH SORTING
index 0
index 1
index 2
2D
3D
Z-Buffer
depth sort each pixel
depth sort each layer
@Michael_Plank
blog.deltastrike.org
CONTAINERS
2D
3D
(Away3D)
DisplayObject
(Bitmap, Shape, Video, ...)
DisplayObjectContainer
(Sprite, MovieClip, ...)
Object3D
ObjectContainer3D
@Michael_Plank
blog.deltastrike.org
SCENE GRAPH
2D
3D
(Away3D)
Sprite
Sprite
Bitmap
Video
Shape
ObjectContainer3D
ObjectContainer3D
Object3D
Object3D
Object3D
@Michael_Plank
blog.deltastrike.org
GETTING STARTED
WITH AWAY3D

Primitives

Materials

Lights

Containers
@Michael_Plank
blog.deltastrike.org
CREATING 3D ASSETS

3D Packages

Blender (Open Source)

Maya

3ds max

...
@Michael_Plank
blog.deltastrike.org
STAGE 3D LIBRARIES

Away3D (Open Source)

Alternativa

Flare3D

...
@Michael_Plank
blog.deltastrike.org
FLASH STAGES
2D Game UI
3D Game
WORKFLOW
From concept art to in-game asset
@Michael_Plank
blog.deltastrike.org
WORK-PIPELINE
Preproduction
Production
Interaction

Concept Art

Image Planes
2 MINUTE SCRIBBLES
SKETCHES
IMAGE PLANES
@Michael_Plank
blog.deltastrike.org
WORK-PIPELINE
Preproduction
Production
Interaction

Concept Art

Image Planes

Modeling

Texturing

Color

Specular

Normal
export image
planes
3D MODEL
POLY COUNT!
BUFFALO: 5400 POLYS
UV MAP
COLOR MAP
SPECULAR MAP
NORMAL MAP
TEXTURED 3D MODEL
@Michael_Plank
blog.deltastrike.org
WORK-PIPELINE
Preproduction
Production
Interaction

Concept Art

Image Planes

Modeling

Texturing

Color

Specular

Normal

Load 3D Asset

Add functionality
export image
planes
export
3D asset
@Michael_Plank
blog.deltastrike.org
WORK-PIPELINE
Preproduction
Production
Interaction

Concept Art

Image Planes

Modeling

Texturing

Color

Specular

Normal

Load 3D Asset

Add functionality
export image
planes
export
3D asset
Geometry
Materials
Scene-graph
Animation
3DS
Yes
Yes
Yes
Not in Away3D
AC3D
Yes
Yes
Yes
Not in Away3D
AWD1
Yes
Yes
Yes
No support
AWD2
Yes
Yes
Yes
Yes, skeletal
DAE
(pending)
Yes
Yes
Yes
Yes, skeletal
MD2
Yes
Yes
No support
Yes, vertex
MD5
Yes
No support
No support
Yes, skeletal
OBJ
Yes
Yes
Inconsistent*
No support
IN-GAME ASSET
ADVANCED 3D STUFF
Postprocessing, Animation, Particles
@Michael_Plank
blog.deltastrike.org
POSTPROCESSING
EFFECTS

Blur

Bloom

Depth of Field

...

implemented using
AGAL shaders
@Michael_Plank
blog.deltastrike.org
POSTPROCESSING
EFFECTS

Blur

Bloom

Depth of Field

...

implemented using
AGAL shaders
2
Die Pipeline
Modeling
Output
inputdevices
modeler
Rendering
transformations
projection
visibility
rasterization
shading
devicedrivers
outputdevices
clipping
@Michael_Plank
blog.deltastrike.org
POSTPROCESSING
EFFECTS

Blur

Bloom

Depth of Field

...

implemented using
AGAL shaders
@Michael_Plank
blog.deltastrike.org
ANIMATION
@Michael_Plank
blog.deltastrike.org
PARTICLES

Flint Particles

Away3D renderer GPU

Physics calculated on CPU

Away3D Particles System

Physics calculated on GPU!
@Michael_Plank
blog.deltastrike.org
3D IN THE BROWSER
Flash

Compatibility
-
Tooling
-
AS3 performance
?
AIR Mobile
Unity (Plugin)

Tooling

C performance
-
Compatibility
WebGL

No Plugin
-
Compatibility
-
Java Script
Unity
(SWF export)
?
Performance