Procedural Generation and Terrain Rendering in a 3D Camel Jousting Game Justin Warfield- Period 5 TJHSST Computer Systems Lab
Goals Procedural Generation Techniques Referential transparency 3D equations Local randomization/realism Game skill adjustment Procedural Applications Terrain/Textures Procedural Modeling (enemies, obstacles, etc) Others (items, weapons, etc) Terrain Rendering Local Detail/Distant Approximation Smart Rendering?
Scope Context: Camel Crusaders Lion killing game (Bombs) OpenGL generated Limits 3-D Low resolution
Background Common techniques for procedurally generated terrain and textures Spore: procedural modeling and animation
Procedural Terrain Local Realism: Random 3D midpoint displacement Algorithms Patterns of 3 Variable Functions Nested Trigonometric Functions Recursing Global Referential Transparency: Algebraic algorithms
Procedural Modeling Temporary Models from Blender Enemies Built of ellipses X, y, z radii determine statistics X, y, and z are a function of t
Other Implementations Background Textures (Sky, Ground) Game difficulty Obstacles Items Sound?
Terrain Rendering Nearer- More Detail, Farther- Less Detail Rendering Only in front Smart Rendering Problems: Relatively Motionless Flat Approximation of Dramatic Landscapes
What's Done 1 st Semester Game Aspects: 3D Environment, Motion Physics Mouse and Keyboard Movement Enemies, Bombs (Drop, throw, and detonate keys) Project Aspects: 2 Java Assisting Programs (Height map and OpenGL modeling) Fractal terrain shell and Algebraic terrain shell Nearer=Greater Detail Rendering
What's Next? PG Aspects: Continue to improve a terrain function Apply fractal textures Create local randomization Basic enemy generation shell Basic environment object generation Rendering Aspects: Overcome encountered problems