1 / 26

Procedural Content

Procedural Content. SET09115 Intro to Graphics Programming. Breakdown. What is procedural content? Models Textures Working with noise Perlin noise Examples Procedural content. Recommended Reading. Search the inter-webs Real-Time Rendering mentions in passing

Download Presentation

Procedural Content

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Procedural Content SET09115 Intro to Graphics Programming

  2. Breakdown • What is procedural content? • Models • Textures • Working with noise • Perlin noise • Examples • Procedural content

  3. Recommended Reading • Search the inter-webs • Real-Time Rendering mentions in passing • Course text mentions in passing

  4. What is Procedural Content?

  5. What do we mean by Procedural Content? • Generally, it is considered that artists are the creators of content for games • Models, textures, etc. • Programmers generally use content produced by artists within games • The goal of procedural content is to allow a programmer to generate content using some form of algorithm • The procedural part

  6. Terrain • We have actually already spoken about procedural content • Terrain • Terrain is generated procedurally from a texture • The texture can be created procedurally also

  7. Models • One part of procedural content generation is the generation of models • In a way, this is what Spore does • Model creation can be quite powerful for more tedious content generation

  8. Cities • http://www.youtube.com/watch?v=-d2-PtK4F6Y

  9. Trees • Speed Tree - http://www.youtube.com/watch?v=r18c7QlWLBQ • http://www.youtube.com/watch?v=98HAIwJRxyU

  10. Fractals • Fractals are a common approach to create trees and other natural content • Fractals are considered to be a particular construct that can be broken down, but each part still being a representation of the whole • Self-similarity

  11. Noise • Noise is a technique usually used to generate textures • Depending on the noise function, different patterns can appear • Noise functions are often used to generate terrain, or apply roughness to a model

  12. Textures • Another common approach is to generate a texture using an algorithm • The texturing practical generates a black and white check pattern • Noise is generally generated into a texture, and then used

  13. Questions?

  14. Working with Noise

  15. Working with Noise • As mentioned, noise is a very common approach to generating procedural content • Graphics cards have a noise function to generate procedural noise • Although considered random, remember a computer cannot really generate a random number • Based on a seed value

  16. Perlin Noise • Developed by Ken Perlin • Perlin noise is used to generate gradient noise • There is smooth transition of heights between pixels • First used in Tron, useful for low memory situations if you use a fixed seed

  17. From Noise to Texture • Once you have noise generated, you can store it in a texture • Texture is just a greyscale image represented by the noise function • The texture can now be used for further content

  18. Texture to Geometry • We have already discussed this idea • Take a grid of triangles • Manipulate the height of the vertices based on some value of the texture • Colour intensity works well • The new triangle grid to represent a terrain • Noise texture can also be used in a more abstract manner • Placement of trees • Placement of buildings

  19. Example - Civilization

  20. Example – Sim City

  21. Questions?

  22. Procedural Content

  23. Procedural Content Wiki • http://pcg.wikidot.com/

  24. Questions?

  25. To do this week… • I’m not going to produce a practical for this week or next • Concentrate on the coursework • I will put the practicals together and post on WebCT over the next few weeks • So you can see what to do • I’ve added some new geometry code to WebCT • Drawing spheres and torus’ for lighting and texturing

  26. Summary • Procedural content is fun! • There is a lot of interest here • Speeds up general development • Really, it’s about working with a particular algorithm to generate the content you want • Can be random / noise based • Can be more structured • Elite did this

More Related