Procedural Generation and the math behind it, architecture and going outside the box.

There has been a lot of discussion regarding PG in this forum, the problem is that many people don't know or fully understand why PG done right is the most powerful shape designer compared to a human design.

This is some of the math and thinking behind a good formula.

[video]https://www.ted.com/talks/michael_hansmeyer_building_unimaginable_shapes?language=en[/video]

[video]https://www.ted.com/talks/benoit_mandelbrot_fractals_the_art_of_roughness[/video]

Sadly most people only see the "boring" PG done by lazy coders and game developers.

"You can't make a city interesting with PG" that is ! sure you can, if you know how to do it, and if you want to do it right.

I know this has been linked here many times, however every time I watch it I get new information, and I even understand more what DB is trying to make. Watch it after the first and second talk, then you will see it in a different angle.

[video=youtube;GEVutbSqBI0]https://www.youtube.com/watch?v=GEVutbSqBI0[/video]
 
Last edited:
PG is a great hobby. In the 80s I did an entire PG Galaxy based on the Traveller game that fitted in my 48k spectrum. Later I did a PG world terrain generator on the atari st for a game that never saw the light of day.
It a fascinating subject that doesn't require a lot of mathematics. Just learn how rng work and seeds, then add your imagination.
 
Love procedural generation. Every bedroom coder should have the 'right-of-passage' of creating a terrain generator from a noise generator and midpoint displacement/diamond-square/faults/deposition/whatever. Then move on to a random city generator (Hello Introversion's 'Subversion' or Shamus Young's 'Pixel City'!). As I type this, another couple of cores on this machine are running randomly generated traffic through random city streets as part of an EU project - PG is not just a hobby, you can get a job out of it sometimes. ;)
 
More than anything in games this year or the next, I'm looking forward to see how FD realise their planetary landing content through PG. That there's a chance we might just get to see a bit of this at Gamescom is quite exciting, though I'm also trying to reign in my hopes and expectations a bit.

edit: anyone read this book?
http://www.amazon.com/Texturing-Modeling-Third-Edition-Procedural/dp/1558608486

It's been a long time for me, but I remember the optimism the authors had about creating these procedural worlds. When I think of ED and PL, I think of this book.
 
Last edited:
edit: anyone read this book?
http://www.amazon.com/Texturing-Modeling-Third-Edition-Procedural/dp/1558608486

It's been a long time for me, but I remember the optimism the authors had about creating these procedural worlds. When I think of ED and PL, I think of this book.

Heh. That book (amongst others) is sat on the shelf behind me. :) Just looked at the print date - 2003. Eeek! Time flies... As others have said elsewhere (ad nauseam on these forums, and including DBOBE above) the problem is not creating them, but filling them with content that people find interesting and stimulation once the initial 'wow' factor wears off. We can build universes, but we can't necessarily bring them to 'life' yet.:(
 
Last edited:
Love procedural generation. Every bedroom coder should have the 'right-of-passage' of creating a terrain generator from a noise generator and midpoint displacement/diamond-square/faults/deposition/whatever. Then move on to a random city generator (Hello Introversion's 'Subversion' or Shamus Young's 'Pixel City'!). As I type this, another couple of cores on this machine are running randomly generated traffic through random city streets as part of an EU project - PG is not just a hobby, you can get a job out of it sometimes. ;)

Lobstris any chance you can provide some open source code for educational purposes?
 
For my olevel project i wrote a stock market simulation on the BBCmicro . I think one of my friends wrote a horse racing predictor .
 
I can procedurally generate anything...... Out of Legos :(



Mad respect for all those who do this sort of work for they are literally creating worlds out of nothing. Just because they are virtual ones it doesn't take anything away from the accomplishment.
 
Last edited:
PG is the future for a lot of components in games, but it can never replace a finely crafted vision.
 
PG is the future for a lot of components in games, but it can never replace a finely crafted vision.

I don't think that is entirely true. For example, you can design an algorithm that scans an artists texture for lists of values that are a close match to the results that your number generator creates (NOT an RNG). The algorithm then 'dumps' seed banks or 'packets of seeds' which are used to create the original texture. I have done this myself a long time ago now. It helps if the artist knows about the algorithm (and specifically the type of numbers it can generate) so that they can create the textures which produce a good match.

Doing things this way will ensure that PG doesn't feel 'samey'. I have no idea if FD do it this way or not but it is one technique that I know works fairly well.
 
I don't think that is entirely true. For example, you can design an algorithm that scans an artists texture for lists of values that are a close match to the results that your number generator creates (NOT an RNG). The algorithm then 'dumps' seed banks or 'packets of seeds' which are used to create the original texture. I have done this myself a long time ago now. It helps if the artist knows about the algorithm (and specifically the type of numbers it can generate) so that they can create the textures which produce a good match.

Doing things this way will ensure that PG doesn't feel 'samey'. I have no idea if FD do it this way or not but it is one technique that I know works fairly well.

Yeah you need a crafted vision of something, to PG/Randomise it, maybe once we have AI that is identical or surpasses human mentality then parameters are no longer driven but generated through dynamic expression, but I can't see that happening anytime soon. Still, it's a really interesting subject. :D
 
Love procedural generation. Every bedroom coder should have the 'right-of-passage' of creating a terrain generator from a noise generator and midpoint displacement/diamond-square/faults/deposition/whatever. Then move on to a random city generator (Hello Introversion's 'Subversion' or Shamus Young's 'Pixel City'!). As I type this, another couple of cores on this machine are running randomly generated traffic through random city streets as part of an EU project - PG is not just a hobby, you can get a job out of it sometimes. ;)

And then once they've had their fun and burn't through all their cash reserves they can stop playing around and make a non-procedurally generated game(prison architect) :D

j/k procedural generation is cool just make sure you got a viable game.
 
Last edited:
[video=youtube;-d2-PtK4F6Y]https://www.youtube.com/watch?v=-d2-PtK4F6Y[/video]

Keep in mind this was years ago and this is just a very simple way of doing it.

And this is another one from a game called "Subversion"
[video=youtube;VnWUp9JnLyc]https://www.youtube.com/watch?v=VnWUp9JnLyc[/video]


It is most certainly possible to make a good PG city. Figuring out the method is probably the most difficult part.
 
PG is the future for a lot of components in games, but it can never replace a finely crafted vision.

Yeah; but it can be a large part of it, (and) be a lot of fun creating it.

- - - Updated - - -

I don't think that is entirely true. For example, you can design an algorithm that scans an artists texture for lists of values that are a close match to the results that your number generator creates (NOT an RNG). The algorithm then 'dumps' seed banks or 'packets of seeds' which are used to create the original texture. I have done this myself a long time ago now. It helps if the artist knows about the algorithm (and specifically the type of numbers it can generate) so that they can create the textures which produce a good match.

Doing things this way will ensure that PG doesn't feel 'samey'. I have no idea if FD do it this way or not but it is one technique that I know works fairly well.

Fascinating Oddball; and sounds like a lot of fun. +1
 
Lobstris any chance you can provide some open source code for educational purposes?

Unfortunately the stuff I'm doing right now belongs to my employer (as ever! pesky contract thingies!). They'd probably get a bit shouty.
.
If you're interested in surface-level stuff then check out the Virtual Terrain Project http://vterrain.org/ (good on general stuff, but I don't think the site is being maintained anymore?). And http://www.shamusyoung.com/twentysidedtale/?p=2940 for Pixel City. Oh, and if you're interested in earlier Elite's universes, see: http://www.jongware.com/galaxy1.html.

- - - Updated - - -

And then once they've had their fun and burn't through all their cash reserves they can stop playing around and make a non-procedurally generated game(prison architect) :D

j/k procedural generation is cool just make sure you got a viable game.

Yeah - Subversion is the poster child for 'great procedural generation idea, shame we can't find a game to go with it'. :(
.
Still have visions of someone doing a S.T.A.L.K.E.R.esque 3-d rogue like in a Proc. Gen. 3D city. One can but dream...
 
Last edited:
Yeah; but it can be a large part of it, (and) be a lot of fun creating it.

I could'nt agree more, it could be said that, a computer is the modern artists eazle, the monitor is the canvas, and the code is the brush and paints. :D
 
Last edited:
PG is the future for a lot of components in games, but it can never replace a finely crafted vision.

I don't agree with you there, let me explain why. If you ask an artist to make a great scenery, he or she will of course start with some rules.

What should be in the picture, what is the focus point, what year, what culture etc etc. this is all rules.
Then as the artist start to paint they use experience and apply their own set of rules build on experience.

People who design sci-fi sceneries always end up with the same touch, we can tell who did it by the way they did it.

Flowers, trees, life forms are all build by a set of rules. Humans are build with a base code we all know as DNA. In all it complexity it just a set of rules and the combinations decide how we are going to look like, how we will behave, and how "smart" we will be. (very simplistic explained)

If you look at mandelbrot's fractal former, it very simple, however the pictures are very complex as you run it over and over.

equation.jpg


The beauty behind the very simple formula is that this is already in the nature, and we as humans are only slowly starting to understand how to use it in our lives.

4c469__78410947_mandelbrot_fractal-spl624.jpg


I do agree with one thing, we need an artist to check if the PG are working as intended, and to tweak the pictures \ design\ seeds.
 
This is almost untopic.

As reading this thread, I searched for more information on the web about procedural generation development. Everything evolved to the end by watching an Oprah clip on youtube where a religous fanatic, called Ted Haggard, discussed with his wife about his previous gay-meetings with prostitutes while smoking meth.

I need to change some variables in my own procedural generated code...
 
Flowers, trees, life forms are all build by a set of rules. Humans are build with a base code we all know as DNA. In all it complexity it just a set of rules and the combinations decide how we are going to look like, how we will behave, and how "smart" we will be. (very simplistic explained)

DNA is a fraction of what it is. Humans are also governed by external forces: gravity, sun light, other planetary phenomena. A simple change in weather conditions and half of the planet goes "mental". I wonder if ED could ever simulate distant planet dwellers based on PG. You know, 4 meter tall, with purple skin, 12 eyes and very unhappy 20 hours a day.
 
Back
Top Bottom