Welcome to the second part of this Procedural Generation aka ProcGen classification series called “Many faces of Procedural Generation” series. To see the previous part click here.
In this post I’m going to introduce a new concept:
ProcGen purity: This concept is a scale mainly used to compare the methodology’s contributions to the final resulting product in different ProcGen strategies. This is important to have in mind because ProcGen can complement a game designer’s work in many ways.
Here are a few strategies used by game designers to explain the relative generation purity:
- Half and half generation: When you procedurally generate part of the content and produce manually the remaining content. For example, if you are creating a 3D city or forest, be it in real, load or design time (check my previous post), you may want to create the meshes procedurally and use manually produced textures. This would stand somewhere in the middle of the purity scale.
- Placement generation: When you (manually) produce most of the content and depend on ProcGen methods to place on set. This can also include basic transformations such as rotations and scalings. For examples like below that you have manually modelled 3D cars that you just want to scatter copies of it randomly on a parking lot (could also randomly apply tint and change the car’s direction) this is a good method. This strategy is also popular to randomly spawn enemies. You could also use external data from a database to define the placement. This strategy stands in the low end of the purity scale.
- Pure generation: When you produce all your content procedurally. Meshes, Textures, sound, behaviors… If the 2004 german game .kkrieger is not 100% pure ProcGen it is very close to it (load-time ProcGen). So much so that its only 96kb in size (compression is a result of ProcGen) but once it is loaded it goes up to over 300mb in you task manager. Take a look for yourselves if interested (download here). This is at the top of the purity scale.
These are just a few examples of ProcGen strategies and combinations.
But remember, you should only use ProcGen if it makes sense to you and complements your work (not replace it).
Hope you liked this post! I still have more parts to these series. Let me know what you guys think! 🙂
Subscribe to this blog here: eepurl.com/bSgft9
Join and invite others to the facebook group on ProcGen! bit.ly/procgenfb
My twitter account: twitter.com/grillher