Download presentation
Presentation is loading. Please wait.
Published byJason Gibbs Modified over 6 years ago
1
Generating Terrains via Marching Cube Algorithm for Games
Kethan Tellis Adam Smith Chris Barakian Ravi Vaishnav
2
How can we create more interesting game terrains?
3
Game Terrains Methods Height maps
4
Procedurally Generated
Game Terrains Methods Height maps Procedurally Generated
5
Procedurally Generated
Game Terrains Methods Height maps Procedurally Generated Via Geometry Shaders
6
Procedurally Generated
Game Terrains Methods Height maps Procedurally Generated Via Geometry Shaders Scanning Models
7
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
8
Marching Cubes Algorithm
Complex, Reusable, Cheap Terrains Perlin Noise Marching Cubes Algorithm
9
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
10
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
11
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
12
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
13
Progression Images
14
Progression Images
15
Progression Images
16
Progression Images
17
Progression Images
18
Progression Images
19
Progression Images
20
Progression Images
21
Progression Images
22
Progression Images
23
Progression Images
24
Progression Images
25
Progression Images
26
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
27
Q & A Demo
28
Q & A Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.