Algorithm suggestions for a 2D cave generation system with distinct hand-made terrain features
Hello, r/proceduralgeneration!
I recently started to develop a side-2D terraria-like underwater exploration game and need a robust procedural map generation to bump up the replayability. For now, I only speak about the "cave structure", no plants, resources, since that should be pretty easy to add with procedurally generated masks later.
I've tried several different methods to achieve what I want:
1. Noise-distorted voronoi diagram with simplex noise + fractional brownian noise.
2. Wave function collapse.
3. Cellular automata / cave generation (but that went pretty badly, I feel like I have no control on anything)
I actually got furthest with voronoi + simplex, and I got pretty convincing results so far. I still struggle with proper "biome blending", since right now it's pretty obvious where biomes start / end, but I imagine I could apply some smoothing to the voronoi diagram to make things a bit less jarring.
The biggest issue so far is how would I go about applying hand-made terrain features to such a noise-map? I thought about masks, but those wouldn't work for more complex features that interact with the cave walls or floors, like big spikes in the wall or something. I fear that the algorithm just isn't suitable for such a thing since everything is basically a multiplier on several noise values like freq/persistence/lacunarity, no easy way to actually control distinct areas manually.
My next bet was wave function collapse, I'm still very much a beginner in this kind of procedural generation, but it was kind of promising, since wfc is basically made for hand-made structures. Unfortunately I can't really achieve a nice, organic cave structure like I did with voronoi + simplex, and biomes are a much bigger beast to handle with wfc, but it's quite possible I just don't know enough about wfc.
I'd love some suggestions for algorithms that I could try since I'm pretty stuck right now. Thanks in advance!
https://redd.it/12ybj4x
@proceduralgeneration
Hello, r/proceduralgeneration!
I recently started to develop a side-2D terraria-like underwater exploration game and need a robust procedural map generation to bump up the replayability. For now, I only speak about the "cave structure", no plants, resources, since that should be pretty easy to add with procedurally generated masks later.
I've tried several different methods to achieve what I want:
1. Noise-distorted voronoi diagram with simplex noise + fractional brownian noise.
2. Wave function collapse.
3. Cellular automata / cave generation (but that went pretty badly, I feel like I have no control on anything)
I actually got furthest with voronoi + simplex, and I got pretty convincing results so far. I still struggle with proper "biome blending", since right now it's pretty obvious where biomes start / end, but I imagine I could apply some smoothing to the voronoi diagram to make things a bit less jarring.
The biggest issue so far is how would I go about applying hand-made terrain features to such a noise-map? I thought about masks, but those wouldn't work for more complex features that interact with the cave walls or floors, like big spikes in the wall or something. I fear that the algorithm just isn't suitable for such a thing since everything is basically a multiplier on several noise values like freq/persistence/lacunarity, no easy way to actually control distinct areas manually.
My next bet was wave function collapse, I'm still very much a beginner in this kind of procedural generation, but it was kind of promising, since wfc is basically made for hand-made structures. Unfortunately I can't really achieve a nice, organic cave structure like I did with voronoi + simplex, and biomes are a much bigger beast to handle with wfc, but it's quite possible I just don't know enough about wfc.
I'd love some suggestions for algorithms that I could try since I'm pretty stuck right now. Thanks in advance!
https://redd.it/12ybj4x
@proceduralgeneration
Reddit
r/proceduralgeneration on Reddit: Algorithm suggestions for a 2D cave generation system with distinct hand-made terrain features
Posted by u/SocketByte - No votes and no comments
Media is too big
VIEW IN TELEGRAM
I have been rendering my planet for a 4K calming orbit ambiance video (full 4K video in comments)
https://redd.it/12ykrzf
@proceduralgeneration
https://redd.it/12ykrzf
@proceduralgeneration
This media is not supported in your browser
VIEW IN TELEGRAM
[Flash Warning] Another experiment w/ image-blends + rotating color-palette
https://redd.it/12z83tr
@proceduralgeneration
https://redd.it/12z83tr
@proceduralgeneration
Chrome Serpents // Me // 2023 // animated version in comments
https://redd.it/12zqzop
@proceduralgeneration
https://redd.it/12zqzop
@proceduralgeneration
Feedback for my dissertation project
Hello r/proceduralgeneration
I have been working on a procedural environment generation application for my dissertation, and would love to recieve some feedback on the environments that the program generates!
The application utilizes WebGL, and uses Marching Cubes to produce the final terrain mesh.
You can download the application from the GitHub repository, and please provide any feedback through the questionnaire.
I understand that some people may not want to download the application so I have provided some example screenshots of the environments that the program generates.
​
Snowy, mountainous-like environment
Desert-like environment
Forest-like environment
https://redd.it/12zrtzt
@proceduralgeneration
Hello r/proceduralgeneration
I have been working on a procedural environment generation application for my dissertation, and would love to recieve some feedback on the environments that the program generates!
The application utilizes WebGL, and uses Marching Cubes to produce the final terrain mesh.
You can download the application from the GitHub repository, and please provide any feedback through the questionnaire.
I understand that some people may not want to download the application so I have provided some example screenshots of the environments that the program generates.
​
Snowy, mountainous-like environment
Desert-like environment
Forest-like environment
https://redd.it/12zrtzt
@proceduralgeneration
GitHub
Release 1.0.0 · Bitheral/webgl-procedural-environment
What's Changed
Demo scene of environment by @Bitheral in #1
Marching cubes integration by @Bitheral in #2
Object scattering by @Bitheral in #3
Object scattering by @Bitheral in #4
Natural scat...
Demo scene of environment by @Bitheral in #1
Marching cubes integration by @Bitheral in #2
Object scattering by @Bitheral in #3
Object scattering by @Bitheral in #4
Natural scat...
Creating a procedural world with varying terrain
Pretty much the title. I have been able to create an infinite world generator using unity but the generated terrain from the noise map is repetitive.
I want to create a noise map capable of creating terrain that varies a lot, creating some terrain that's flat, some that's mountainous, some that's spiky, etc. My current noise map generator just creates repetitive noise of the same terrain type over and over again with no variation.
I've been trying to copy Minecraft's algorithm as an example but to no avail and I'm getting desperate
Thank you, and I appreciate any help
https://redd.it/12zxtby
@proceduralgeneration
Pretty much the title. I have been able to create an infinite world generator using unity but the generated terrain from the noise map is repetitive.
I want to create a noise map capable of creating terrain that varies a lot, creating some terrain that's flat, some that's mountainous, some that's spiky, etc. My current noise map generator just creates repetitive noise of the same terrain type over and over again with no variation.
I've been trying to copy Minecraft's algorithm as an example but to no avail and I'm getting desperate
Thank you, and I appreciate any help
https://redd.it/12zxtby
@proceduralgeneration
Reddit
r/proceduralgeneration on Reddit: Creating a procedural world with varying terrain
Posted by u/squiree98 - No votes and no comments
Recursive cube subdivision and translation (like an L-system) in geometry nodes in Blender
https://redd.it/130krit
@proceduralgeneration
https://redd.it/130krit
@proceduralgeneration
Reddit
r/proceduralgeneration on Reddit: Recursive cube subdivision and translation (like an L-system) in geometry nodes in Blender
Posted by u/kronpano - No votes and no comments
I made a heightmap generator that could create pretty nice-looking fantasy terrain. (Advice wanted)
https://redd.it/130lcn6
@proceduralgeneration
https://redd.it/130lcn6
@proceduralgeneration
Reddit
r/proceduralgeneration on Reddit: I made a heightmap generator that could create pretty nice-looking fantasy terrain. (Advice wanted)
Posted by u/butterenergy - No votes and 1 comment
While working on my game I made a highly optimized Noise Library for C#, I just made it open-source!
It's the fastest implementation of Perlin Noise out there! I commented on all the optimizations I did over standard implementations for anyone who is interested in the details of what I did. krubbles/Icaria-Noise: A highly-optimized C# noise-function library. (github.com)
A screenshot from my game :\) Will be posting more on it soon!
https://redd.it/131h252
@proceduralgeneration
It's the fastest implementation of Perlin Noise out there! I commented on all the optimizations I did over standard implementations for anyone who is interested in the details of what I did. krubbles/Icaria-Noise: A highly-optimized C# noise-function library. (github.com)
A screenshot from my game :\) Will be posting more on it soon!
https://redd.it/131h252
@proceduralgeneration
GitHub
GitHub - krubbles/Icaria-Noise: A highly-optimized C# noise-function library.
A highly-optimized C# noise-function library. . Contribute to krubbles/Icaria-Noise development by creating an account on GitHub.
My game creates planets divided in sectors, and each sector has procedural generated resources, walls, terrain, and many more things are also randomized. Its a planetary exploration company sim inspired in Vampire Survivors: it has unlocks, invent your own weapons by mixing features, and more.
https://redd.it/1326zxz
@proceduralgeneration
https://redd.it/1326zxz
@proceduralgeneration
Composing noise functions to create clouds
https://www.youtube.com/watch?v=MqbRNZc51uo
https://redd.it/132ac91
@proceduralgeneration
https://www.youtube.com/watch?v=MqbRNZc51uo
https://redd.it/132ac91
@proceduralgeneration
YouTube
Composing noise functions to create clouds
Mixing noise functions to create clouds with global cloud cover:
* cubemap for global cloud cover
* 3D Perlin noise sampled on a spherical surface for creating 2D blobs
* multiplied with vertical profile
* remapping using high frequency Worley noise for high…
* cubemap for global cloud cover
* 3D Perlin noise sampled on a spherical surface for creating 2D blobs
* multiplied with vertical profile
* remapping using high frequency Worley noise for high…