**UPDATE - not BP only - includes Custom C++ Blueprint Function Library **
Allright. As I can see there’s a different project doing exactly the same with BP. No reason to continue working on this kind of thing I guess. You can get a BP procedural planets free there, so I’m out with this one.
…
I mean, I done with BP only approach. Started to work with C++ this week so I can use different noise functions, and run generation process on different CPU thread.
What I have done so far:
Full C++ grid generation and Noise implementation for Fractal Value, Gradient, Cellular, Simplex.
Custom made (still WIP) normal calculation which is much faster than the one from Procedural Mesh.
Next step is moving all the functions to different CPU thread so there is absolutely no FPS drop during planet generation.
Basically, a segment of 256x256 poly is generated in about 800 ms.
Screenies:
Yep.
===========================================================================
Old version.
Well, not really BP only as I’m using a plugin, but about that - later.
So many people and games are using procedural generation now, specially space games, Dual Universe, Star Citizen, No Man’s Sky, so on, so forth.
And I though, if they can do it, so can I! (ofc “do it” not that complicated as the titles above “do it”).
https://www.youtube.com/watch?v=o5KJGbID1nU
So, started from a grid of points, and then moved it, copied it per side (6 sides, as a cube) and normalized it. Then added Simplex Noise combinations (HUGE thanks to **DevDad **for that plugin Simplex Noise
Every noise layer also creates a vertex color, 3 layers for 3 colors so far. It takes more less 3 seconds to create a 128x128 quad, there are like 96 quads per planet (values can be changed) biggest I did was 256x256 polys per quad and 8x8 quads per planet’s side.
So, that’s roughly… 256x256x64x6 = 25 165 824 polygons. Performence was, well, not bad. But it took ages to generate. So, I decided I’d SAVE that planet to a game save. Worked. Now after a first run the planet is saved and I can load it inside the editor or on the beginning of a game. Works pretty nice. Problem is a saved planet that size is 720 MB. The one you see in the video is 320 MB. No LOD yet, but the performance is amazingly good here.
Still, it would be AWESOME to have that load or generate on a different thread. Or something.
Anyways, This is how I’m killing time waiting for No Man’s Sky here. Might even consider putting that Blueprint to Marketplace later, when I finish the atmosphere shader and some other things, like rocks placement, forests and water… And such… And LOD… And gotta ask DevDad for a permission to include his plugin… Or something.
God, how I love Unreal!
What do you think?