r/proceduralgeneration
Pen plot of a Toroid constrained by a limiter.
Basically it’s a wireframe toroid drawn in a vector program I created , but it has a limiter that hard stops the edges I discovered if I gave the limiter a negative value it indebted the outer regions to get this cool pinched look. Plotted light green for two reasons 1: wife said use light green lol 2: CRT aesthetic ;)
Evolving procedurally generated cells
My game is fully procedurally generated, with each cell having a genome that drives the expression of organelles and phenotypic traits. Everything you see is generated and simulated at run time, all the way down to the cell's organelles. The playtest is open to anyone who wants to try it out, you can find it here
My game is fully procedurally generated , releasing a demo next month! do you think it's ready?
The game is called fish lab , and it has basically no bitmap assets , Besides some icons and title screen
There will be a steam demo may 18th
Procedural hex world-builder in Unity. Part 2
Back in January, I shared a prototype of my procedural mountain generation here. Over the past few months, I added side faces to the hexes and implemented water. Water hex cuts turned out to be trickier than expected, but I think it works now.
Water hexes are actually less procedural than the mountains. I split the generation pipeline into several stages:
First, I generate the coastline (essentially a set of 2D points within the hex).
Then I compute depth values for each vertex inside the coastline.
Finally, I generate side faces where needed.
On top of that, I generate the water mesh itself, plus side faces for water if required.
I struggled quite a bit with coastline generation. Conceptually it's just a set of points on a plane, but getting good results wasn't easy. I went through ~5 iterations trying different approaches. The main issues were either visible seams between adjacent hexes or unnatural-looking shapes.
In the end, I switched to a hybrid approach: I defined fixed connection points on hex borders and manually authored a set of coastline templates that snap to those points. This gave me much more control. Variation comes from randomly selecting a template from the pool.
This decision was partly inspired by how water seems to be handled in Dorfromantik - with the difference that they appear to pre-author full 3D variations, while I only define 2D curves and generate meshes from them.
As a next step, I'm considering loosening the constraints a bit - e.g., allowing slight random offsets for connection points and interpolating segments of the coastline to get smoother transitions.
I realize this post is quite technical - if anyone wants more details, feel free to ask in the comments. I can share more breakdowns and screenshots (always easier to explain visually).
Also, I recently put together a small team and we're going to try turning this into a full game. We're working on it in our spare time, but trying to make steady progress.
The project is called Hexscapes - let's see where it goes :)
I built a real-time Eulerian smoke simulator from scratch — CUDA/C++, no engines, no pre-built solvers [OC]
Eulerian grid-based smoke sim running real-time on the GPU.
What's under the hood:
- Semi-Lagrangian advection
- Gauss-Seidel pressure solve with SOR
- Vorticity confinement + buoyancy
- CUDA/OpenGL interop (zero-copy rendering)
Every kernel handwritten in CUDA. Every equation derived from scratch.
Fractal curve created using L systems (Splined)
One Click City Generation
I'm working on a procedural city generation for my roguelike game. Early stage but pretty proud of how it's turning out.
Mold R&D - Houdini
was experimenting with mold growth for my fruits
Procedurally Generated Infinite Dunes Terrain in Real Time
I’m working on my own role-playing game inspired by Wizardry 8 and Might & Magic 6. Since I chose the desert as the first biome, I’ve focused on optimizing procedural generation specifically for it. You can see the result in the video.
I experimented with various generation techniques, including vertex shader–based terrain generation - using a mesh that covered the required area, with a shader applying vertex transformations. In practice, the mesh itself stayed in place as the camera moved; only the vertices changed, creating the illusion of movement. However, this turned out to be slightly more expensive than generating the terrain dynamically on the CPU, since the vertex shader processes every vertex each frame. With CPU-based mesh generation, no recomputation happens for the entire lifetime of a chunk.
Chunks themselves are stored in a pool and reused: as the camera moves forward by one chunk's size, a new line of chunks is created ahead, while a line of chunks behind the camera is released and returned to the pool. New chunk generation is spread across several frames to keep the framerate perfectly stable. Generating everything in a single frame is possible, but can cause occasional drops.
At 800p (16:10), my modest MacBook Air M3 with 8 GB of memory pushes over 1,100 FPS - even with real-time terrain generation on a single CPU thread. The dunes come with collision meshes, so you can walk on them. 520k+ primitives drawn, ~65 draw calls. Draw distance is ~1,800 meters, flight speed is 500 m/s, and altitude is 60 meters.
I recreated the Butterfly nebula (NGC 6302) procedurally using Blender
This is an actual 3D procedural volumetric shader of NGC 6302-like nebula.
Procedural Pixel Planets
https://chilly-chili.itch.io/wayfarer
Made a pixelated planet generator (inspired by that one really great post from ages ago) as a late submission for Procjam and might have slightly missed the deadline. Proud of how it came out, but I think it still needs tweaking, too many planets come out as uninteresting "blobs" due to a mix of low frequency + 1 octave + a dull palette.
Works on shader magic and otherwise totally standard noise-based map generation on a sphere.
I built a Vulkan ray-marched voxel sandbox in Rust because I got tired of switching between Minecraft and external tools just to make custom blocks
My daughter and I have spent countless hours in Minecraft creative mode. Over time we kept reaching for external apps to design custom blocks, models, and textures. It worked, but the context switching killed the flow. At some point I thought -- why isn't all of this just... in the game? An ultimate creative mode where you never have to leave to make something new.
So I built Voxel World.
It's a GPU-accelerated voxel sandbox written in Rust that renders entirely through Vulkan compute shaders. No vertex/fragment pipeline -- everything is ray marched through a 3D texture. I went this route because I wanted to see how far you could push pure compute-based voxel rendering and honestly because it was a fun engineering challenge.
What started as a rendering experiment turned into a pretty full-featured creative sandbox:
World building tools -- 20+ tools for cube, sphere, torus, arch, bridge, bezier curves, helix, stairs, terrain brushes, clone stamp, and more. All the stuff we wished Minecraft had built in.
In-game model editor -- Sub-voxel models at 8^3, 16^3, or 32^3 resolution with 32-color palettes and per-voxel emission. 175 built-in models (torches, fences, doors, glass panes, etc.) and a full editor for making your own with pencil, fill, mirror, undo/redo. This was the big one for us -- being able to design a model and place it without alt-tabbing.
Procedural texture generator -- Design custom block textures in-game with real-time pattern preview. No more exporting to an image editor and hoping the tiling works.
The world itself is procedurally generated with 17 biomes, 4 cave types, 9 tree species, water/lava simulation, and falling block physics. 47 block types with 608 painted variants (any of 19 textures in any of 32 color tints). Day/night cycle, shadow rays, ambient occlusion, animated clouds, stars, water, point lights with animation modes. Quality presets scale from potato to ultra depending on your hardware.
Multiplayer is still very work in progress but getting better. Encrypted UDP, up to 4 players, full world sync. The networking stack has been the hardest part to get right -- epoch-aware chunk dedup, LZ4 compression, handling the host running both server and client. It works but I wouldn't call it battle-tested yet.
Runs on Linux, macOS, and Windows. MIT licensed, fully open source.
Repo: https://github.com/paulrobello/voxel-world
Build from source: git clone https://github.com/paulrobello/voxel-world.git && cd voxel-world && make run
If you have any questions about the rendering pipeline, the sub-voxel model system, or the chunk streaming architecture I'm happy to dig into the details. This has been a wild project to work on and I've learned a ton building it.
Ifinite money glitch!!
Blender Guru said a traffic cone costs $3,600. So I built an Infinite Money Glitch (Procedural Cone Generator). Free download in comments.