Upload
bryson
View
46
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Generating Terrains via Marching Cube Algorithm for Games. Kethan Tellis Adam Smith Chris Barakian Ravi Vaishnav. Game Terrains. How can we create more interesting game terrains?. Game Terrains Methods. Height maps . Game Terrains Methods. Height maps. Procedurally Generated. - PowerPoint PPT Presentation
Citation preview
Generating Terrains via Marching Cube Algorithm
for Games
Kethan Tellis Adam Smith
Chris BarakianRavi Vaishnav
Task Challenge
\nted
Achievements Demo
Game Terrains
How can we create more interesting game terrains?
Task Challenge
\nted
Achievements Demo
Game Terrains Methods
Height maps
Task Challenge
\nted
Achievements Demo
Game Terrains Methods
Height maps
Procedurally Generated
Task Challenge
\nted
Achievements Demo
Game Terrains Methods
Via Geometry Shaders
Height maps
Procedurally Generated
Task Challenge
\nted
Achievements Demo
Game Terrains Methods
Scanning Models
Via Geometry Shaders
Height maps
Procedurally Generated
Task Challenge
\nted
Achievements Demo
Game Terrains Methods Drawbacks
Heightmaps• Lack of complexity in environment (No caves /
tunnels)
Procedurally Generated• Can’t be saved and reused. Gameplay is inconsistent
Geometry Shaders• Difficulty in collision detection • High computational costs
Scanning Models• Difficult to create• Costly in time and resources
Challenge
\nted
Achievements DemoTask
Complex, Reusable, Cheap Terrains
Perlin Noise
Marching Cubes Algorithm
Challenge
\nted
Achievements DemoTask
Perlin Noise Implementation
Octaves• Number of octaves increases the amount of
the jitter around the lowest frequency
Alpha• Increases / Decreases amplitude of certain
frequencies, bigger changes in terrains
Beta• Changes how much weight is granted to higher
frequencies, more sharp deviations in terrain
Frequency• Amplifies the fluctuations in the amount of
jitter
Challenge
\nted
Achievements DemoTask
Perlin Noise Implementation
Octaves• Number of octaves increases the amount of
the jitter around the lowest frequency
Alpha• Increases / Decreases amplitude of certain
frequencies, bigger changes in terrains
Beta• Changes how much weight is granted to higher
frequencies, more sharp deviations in terrain
Frequency• Amplifies the fluctuations in the amount of
jitter
Challenge
\nted
Achievements DemoTask
Perlin Noise Implementation
Octaves• Number of octaves increases the amount of
the jitter around the lowest frequency
Alpha• Increases / Decreases amplitude of certain
frequencies, bigger changes in terrains
Beta• Changes how much weight is granted to higher
frequencies, more sharp deviations in terrain
Frequency• Amplifies the fluctuations in the amount of
jitter
Challenge
\nted
Achievements DemoTask
Marching Cubes Implementation
Algorithm / Look-Up Table• Actually algorithmically described all 256 cases
Face Normals / Winding Order• Correctly had face normals face away from
bounded density areas
Vertex Normals• Achieved weight averaged normals for
verticies by comparing to neighbors
OBJ Export• Allowed surface to be exported as OBJ file for
loading into Maya and eventually games
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Progression Images
Challenge
\nted
Achievements DemoTask
Marching Cubes Implementation
Mesh Construction• Built lookup table of each case• Built final mesh by adding position
OpenGL Implementation• Used Vertex Arrays for speed increase• GLSL for custom shading
Challenge
\nted
Achievements DemoTask
Q & A
Demo
Challenge
\nted
Achievements DemoTask
Q & A
Questions?