Python Fractal Landscape
24 comments · 94% upvoted · source · other discussions
24 comments · 94% upvoted · source · other discussions
Very nice man !!! Have never heard about Mayavi before, thanks.
I remember watching a documentary on fractals and they had this game designer on who figured out you could use them for stuff like this.
*edit: exactly what OP said.
This is really cool!
Impressive! Did any renderings come out looking weird or do they all look as good as this?
Posts like this give me the motivation to keep learning Pyhton. Thank you so much OP!
I love that episode of Nova - one of my favorites!
Wow... takes me back years ago... we used to do similar (although much less detailed) stuff on the Atari ST. Rendering took hours...
How
nice vertical shale
That's pretty neat! Thanks for sharing.
Awesome, mate! Looks really nice :)
I watched the Nova documentary "Fractals - Hunting the Hidden Dimension" on Youtube, and was interested in the story of a computer graphics engineer at Boeing, Loren Carpenter, who created the first computer-generated mountain landscapes. He did this after reading Benoit Mandelbrot's book about fractals, and created the landscapes by diving them into progressively smaller triangles. I tried out the idea with a small Python script.
To set up an easy coordinate system, I used squares split diagonally into right-angle triangles, which could be split into smaller right-angle triangles with random elevations. That's somewhat imperfect but is enough to test the idea. I used the "Mayavi" Python library for 3D visualisation (since it was in the Ubuntu repository) to display the result.
I thought this group might be interested in the result.
My test had just 20 lines of Python.
Code on Pastebin
Code on Github
The image shown was generated with "random.seed(6)" added. Rotation, zoom and background colour were set interactively in the Mayavi visualizer.
The Python code was dashed out as a quick test, so the method of finding the correct corner points in the correct order is not very readable. Sorry about that. After writing this test, I Googled for the algorithms usually used in fractal landscape generation and found out about the fractal terrain "diamond square algorithm", so if you want to know more about this subject, then I suggest you do the same.
Edit: Here's two more landscapes on Imgur
jiminiminimini 23 points · Nov 2017
You should check out /r/proceduralgeneration
Swipecat [OP] 5 points · Nov 2017
Thanks. Some interesting stuff there.
sneakpeekbot 7 points · Nov 2017
Here's a sneak peek of /r/proceduralgeneration using the top posts of the year!
#1: Physics based creatures with exchangeable body parts [WIP] | 60 comments
#2: I can't code so I'm making a map generator using only Photoshop actions. | 52 comments
#3: Dystopian slums generator | 20 comments
I'm a bot, beep boop | Downvote to remove | Contact me | Info | Opt-out
Gear5th 2 points · Nov 2017
Thanks for this. Found some really interesting stuff!
grmblflx 8 points · Nov 2017
I dont know how i would use this or if this is any good, but i kinda like it :)
[deleted] 7 points · Nov 2017
I can imagine using it for more artistic applications, or maybe even game development.
[deleted] 5 points · Nov 2017
You should check out pyenv. No need to limit yourself to distro-provided libs or python builds.