How does one get started with procedural generation?

后端 未结 9 1476
借酒劲吻你
借酒劲吻你 2021-01-29 16:56

Procedural generation has been brought into the spotlight recently (by Spore, MMOs, etc), and it seems like an interesting/powerful programming technique.

My questio

9条回答
  •  慢半拍i
    慢半拍i (楼主)
    2021-01-29 17:32

    (More than 10 years later ...)

    Procedural generation only means that code is used to generate the data instead of it being hand made. For example if you want to generate a forest with various trees you are not going to design each tree by hand, thus coding is more efficient to generate the variations. It could be the generation of the tree graphics, size, structure, placement ...

    In general there is some kind of interation with a few rules, in addition to that you can add some randomness and logic of your own, combine all of these techniques ... Anything somewhat chaotic but not too chaotic can yield interesting results.

    Here are a few notable techniques:

    • https://en.wikipedia.org/wiki/Cellular_automaton
    • https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life (notable cellular automaton)
    • Book: https://en.wikipedia.org/wiki/A_New_Kind_of_Science
    • Fractals: https://en.wikipedia.org/wiki/Fractal
    • Plants: https://en.wikipedia.org/wiki/L-system
    • Terrain or maps, textures, smoke, clouds, turbulence: https://en.wikipedia.org/wiki/Perlin_noise
    • Terrain or maps: https://en.wikipedia.org/wiki/Voronoi_diagram

    A few games famous for their procedural generation:

    • https://en.wikipedia.org/wiki/Rogue_(video_game) and roguelikes in general
    • https://en.wikipedia.org/wiki/Elite_(video_game) random seed ...
    • https://en.wikipedia.org/wiki/.kkrieger The entire game uses only 97,280 bytes of disk space.

    Video tutorial about Procedural Landmass Generation.

    Conference on procedural content generation for games, has a lot of videos on the topic: everythingprocedural

    Have fun.

提交回复
热议问题