r/VoxelGameDev

▲ 63 r/VoxelGameDev+2 crossposts

Micro-voxel trees and grass

I’ve been working on this for the past few weeks, and it’s finally starting to come together.

This is a DDA-traversal-based renderer. The world is divided into blocks, and selected blocks perform DDA traversal to render micro-voxel geometry instead of relying on flat textures.

Micro-voxels participate in the deferred lighting pipeline just like regular geometry - they receive global illumination, cascaded shadows, and volumetric lighting.

Built with Unity’s Scriptable Render Pipeline. 60 FPS @ 1080p on Mac M3 Pro.

P.S. The micro-voxel generation shader is still very much a prototype, so the leaves and grass are intentionally simple for now. Improving the procedural generation and shapes is the next major step.

u/HyperspaceFrontier — 16 hours ago
▲ 20 r/VoxelGameDev+1 crossposts

I built a GPU-driven voxel engine in C++23 with binary greedy meshing and GPU frustum culling

Hey all,

I've been working on a voxel engine in my free time for about a year now, and figured it's at a point where it's worth sharing.

The core idea is pushing as much work onto the GPU as possible: a compute shader evaluates chunk visibility every frame, pushes visible cached meshes straight into an indirect draw buffer, and kicks off meshing requests for anything not yet cached (rendered the following frame). Meshes themselves come from a binary greedy meshing algorithm that merges contiguous voxel faces into compressed 2-byte quads, backed by a lock-free VRAM mesh cache with FIFO paging.

Some other bits:

  • AZDO rendering: persistent mapped buffers, multi-draw indirect, DSA
  • Triple-buffered indirect command buffer to avoid CPU/GPU write-read conflicts
  • 3D ring buffer for chunk streaming, only loads incoming planes as the camera crosses chunk boundaries, so it never rebuilds the whole volume
  • Pluggable world generation via a ChunkGeneratorStrategy interface
  • DDA-based voxel ray-casting for voxel picking

https://reddit.com/link/1uo83t0/video/5jdp8nqv4gbh1/player

Status/caveats, to be upfront:

  • This is a solo hobby project, developed on and off (it's not production-grade)
  • There are known bugs, and it may not run correctly under every configuration
  • Some of the test suite currently fails — I haven't gotten to fixing everything yet
  • It's currently NVIDIA-only (uses NvOptimusEnablement to force the dGPU on hybrid laptops); other vendors haven't been tested and may not work

If you're curious about any of the implementation details (meshing, culling, cache design, etc.) Repo's here: https://github.com/omar-owis/VoxelEngine

reddit.com
u/GeologistAvailable71 — 16 hours ago
▲ 81 r/VoxelGameDev+11 crossposts

Progress on my threejs Voxel engine

I've fully redone the engine for my game AresRPG, I aim for an immersive world! this is a browser based MMORPG on Sui

u/Sceat — 2 days ago

My progress after about a year of on and off development

I've been working on my realtime voxel engine for about a year now and I've finally come to a state where I feel like I can present it to someone.

Current features include:

  • Voxel Cone Tracing Global Illumination via raymarching
  • Destructive Fracturing Physics
  • Volumetrics (God rays & Fog)
  • Particles
  • Incomplete but usable editor (rigging, animations, scenes)
  • Bone Animations from MagicaVoxel objects

This engine is fully written in Kotlin/JVM and uses OpenGL for it's rendering. Currently, everything runs on a single thread. Large scenes are still a bit of a problem performance wise but it handles large amounts of rigid bodies relatively well.

Edit: I forgot to say, but the model in the video isn't mine. It's made by Max Parata and can be found on itch.io. I just used this model for the demo.

https://reddit.com/link/1umy8ef/video/chfjnhxbt4bh1/player

reddit.com
u/meo209 — 2 days ago

chunk meshing

Hello im using raylib lib for c++ . and my question is how to make chunks in a 3d game . like player is in position and the game just load 9 chunk of 16*16 block around him (but the actual game maybe is around like 400 chunks ). so the game doesnt lag . and only draw the pixels in front him and the back doesnt draw anything . so it means like from 9 chunk around him just load , 4 chunk that are in front of him .

reddit.com
u/More-Raspberry-6083 — 3 days ago
▲ 55 r/VoxelGameDev+1 crossposts

I built a Multiplayer Space Voxel Sandbox with my 10yo son. 100% of the C# logic, 3D models, textures, and music are AI-generated. Here is our first trailer! (Open Source)

My 10yo son and I built this open-source voxel game entirely with AI (Claude generated the Code, and models - ChatGPT / Gemini helped with the story - Music by Suno, Soundeffects by Elevenlabs, I managed the Client/Server architecture). Read the full backstory and find the links to the free Beta & GitHub down in the comments! ⬇️

u/KatastrophalKlang — 4 days ago

Added more materials to my smooth terrain system

I am making an open source sandbox game in Godot, I am going for SDF terrain instead of cubes or microvoxel, and texturing it with a material system. Each base material has an albedo, normal and ORM map. With the current compression level I can fit around 680~ base Materials to 1 GB of VRAM with mipmaps. And then I can color tint for practically infinite variations.

Image 2 shows a rough idea of the terrain shading and shape, but I am switching back to marching cubes from surface nets for now so the shape might look different, I also didnt tune the visuals at all.

I am working on the building system now before I go back to port the terrain system to rust or C++ for performance.

Any feedback/ideas/questions welcome.

u/Corruptlake — 4 days ago
▲ 41 r/VoxelGameDev+2 crossposts

Update on my voxel gamemode | Create your own creatures, blocks, and items

About a month ago I started with just the creature creation system which was inspired by spore and lets you dynamically configure creatures but also sculpt them. I posted some footage showing an earlier version of it: https://www.reddit.com/r/sandbox/comments/1u3m3tp/some_test_footage_for_a_voxel_creature_system_ive/

The prior post shows more detail on how you can customize the creatures but since then I added an upright body type as well.

Once I had the creatures working I wanted to give them a world to inhabit so I added a basic procedurally generated voxel terrain and a main menu with save files for worlds. A lot of optimization needed to be done here and I obviously based quite a bit of the efficient world saving on Minecraft since they have that figured out, but I had to veer off quite a bit since this is designed to be more fluid rather than everything being premade. In the end it's roughly the same efficiency as Minecraft and worlds shouldn't grow too large even after a lot of editing or adding of custom blocks, creatures, or items.

I made a system based on my code for creature editing that instead allows you to create a custom block which you can sculpt and color to make any blocks or shapes you want. All of your saved blocks, creatures, and items are saved locally so you can access them on any world or server.

The item edit station is working and I used it to make the pickaxe and other icons in the game just like I used the block edit station to help make blocks for the world; however, I don't currently have a system for players to spawn in their custom items yet. I'm trying to work out how to best handle it like I have with custom blocks where you have a sensible mechanism to get them. For custom blocks you take clay to the clay station you can form it into blocks that look like any of your custom made blocks and you can then place them down in the world like any other block. This also limits spam of new block types into the world since they do need to be stored on the server even though their size is very small in the condensed binary form.

I'm terrible at art (as you can probably tell), but I'm trying to solidify the foundation so more artistic people can do more with it. The idea is that people who enjoy building in creative mode would be able to fully customize everything where if a block or creature doesn't exist for their build, they can simply create it in game without me needing to manually add everything. (I want to add vehicles later so you can make custom cars, boats, planes, zeppelins, etc... eventually too).

I'm really focused on getting the actual foundation working well but I would love some feedback from people on what they think and what suggestions they have. Especially if it helps me steer away from being a Minecraft clone since I don't want to just build Minecraft and it looks way too similar now after adding the procedural generation. I'm having a lot of fun just working in the engine and getting things to work but I'm still lost on what the core loop of the game should be. The world types are setup where I can create completely different gamemodes and maps with it so I can keep a more traditional adventure Minecraft style mode but prioritize a better option for the main mode(s).

u/Sixhaunt — 4 days ago

Voxel Vendredi 03 Jul 2026

This is the place to show off and discuss your voxel game and tools. Shameless plugs, links to your game, progress updates, screenshots, videos, art, assets, promotion, tech, findings and recommendations etc. are all welcome.

  • Voxel Vendredi is a discussion thread starting every Friday - 'vendredi' in French - and running over the weekend. The thread is automatically posted by the mods every Friday at 00:00 GMT.
  • Previous Voxel Vendredis
reddit.com
u/AutoModerator — 3 days ago

SubTerra - PCG Cave Generator

Most procedural cave generators on Fab are built as standalone actors. They generate a cave, but they don’t integrate naturally with Unreal Engine’s PCG workflow.

SubTerra takes a different approach, Instead of building everything around a single actor, the entire generation pipeline is exposed as modular PCG nodes.

You can use the complete cave generator, or combine individual nodes with the rest of your existing PCG graph to build your own procedural workflows, the result is a cave generator that feels like a natural extension of Unreal Engine rather than a separate tool.

The plugin also focuses on producing caves that are practical for gameplay, not just visually interesting, every generated layout is fully connected, supports multiple elevation levels through walkable ramps, and produces organic rock formations instead of smooth metaball-style tunnels.

Once the cave is generated, its surface is automatically classified into FloorWall, and Ceiling PCG points, making it easy to populate the environment with your own assets using Unreal’s existing PCG tools.

How it Works

It's built entirely on UE5's PCG framework, so it slots into your existing PCG setup instead of being a separate black-box actor. From a single seed it scatters a bunch of rooms and connects them with tunnels using a spanning tree + a few extra loops so the layout's always fully traversable but different every seed.

That whole thing gets written into a signed distance field (basically a 3D voxel volume), I roughen the walls with fractal noise so it reads like actual rock instead of smooth metaball blobs, then run marching cubes over it to get a watertight, collidable mesh. The heavy part runs on worker threads so the editor doesn't hitch.

Using it, you've got two routes:

  • Easy mode: drop one actor in your level and a full cave shows up. Then you just tweak sliders in the details panel — room count, room size, tunnel width, levels, noise, stalactites — and it regenerates live in the editor (no play mode). There's a regenerate hotkey for rolling whole new layouts too.
  • Full control: wire the PCG nodes yourself in a graph. It outputs Floor/Wall/Ceiling surface points you can pipe straight into Epic's mesh spawner (or any scatter plugin) to decorate the walls.

Documentation and Fab Links in comments

u/Alvens_Dev — 5 days ago
▲ 58 r/VoxelGameDev+1 crossposts

Adding Caves to my Micro Voxel Engine (Devlog #3)

Enjoyed implementing caves in my Micro Voxel engine this past week. Nothing too fancy, just stacking a few features on top of each other:
- typical stacked noise functions
- feature generators which deterministically spawn additional voxels following some pattern. Using this for the larger stalagmites. They do a downward and upward fill.
- erosion pass to create random crevices and cutouts.

Still a lot more to do! i like the idea of Cave biomes, and would also like a wider variety of generation types. Large caverns, walkable straight tunnels, cleaner surface caves etc;

At the moment the generation can look quite scrappy in places, but hey ho!

youtu.be
u/MGMishMash — 7 days ago

vanilla java 25 fully software rendered my own game made from scratch

i started in march of 2025 screen shot was taken in june of 2026 30th

u/Shoddy_Day_1558 — 6 days ago

I need to admit something.

I've been a part of this community since the very beginning. I'm the person that created this subreddit, and yet even after spending 14 years in the voxel game dev sphere, I still suck at voxel game development. You'd think I would have picked some of this stuff up. You'd think that I'd know all of the techniques inside and out. But honestly, there's even a lot of terminology that I don't even understand. I will be totally honest and say that I still have no clue what raymarching is. I don't know what cone tracing is. I had to implement 3D DDA from scratch with my own understanding of math because I couldn't wrap my head around the whitepaper.

I made this community in the hopes that I could learn more about voxel game development, but I'm still nowhere near as knowledgeable as many of the people in here.

I've made several voxel engines, but never finished any of them.

I don't know where I'm going with this post. I just feel really jaded about all the time and work that I put into improving my programming skill only to come to the conclusion that I'm really not even that good at programming. Barely better than an amateur. And I've been programming for nearly 18 years! Maybe it's just time that I give up on programming and move on to something else. Something that I can actually become skilled at. Because as much as I have felt in my heart that programming is the right thing for me, I just really am not good at it, and really don't seem to be able to get better at it.

reddit.com
u/foofnordbaz — 7 days ago
▲ 26 r/VoxelGameDev+2 crossposts

Interview with me (VoxRay Games founder) on both the business and tech of our game Voxile

I thought this would be of interest to people here, the first part (which is more business oriented) should be interesting if you want make money from your voxel game, and then there is also plenty on the tech behind the game, voxel raytracing, but also the programming language that drives it, and the effects of AI.

report.wand.com
u/FearlessFred — 9 days ago

Some explosions from my 3D falling-sand sim / game Falling Cubes, now that I've got pressure somewhat working.

System summary 

  • Each explosion / shockwave is its own cube type. It uses the 9 shared bits also used as velocity bits to store both the direction it's expanding from and how many expansion steps it has left (effect cubes are static and don't need velocity). Every update it spreads copies of itself into neighboring cubes if they're allowed to be overwritten by the explosion / shockwave effect, or if the force is high enough to completely destroy them. 
  • Explosion / shockwave effects injects pressure at its starting position and at the expanding positions The amount of pressure depends on the base strength of the explosion and how many expansion steps remain .
  • The pressure system compares the pressure in adjacent pressure cells against each cube type's pressure tolerance to determine whether any additional cubes should be crushed. 
  • Explosions also inject temperature, based on the calculated strength causing various cubes to melt into lava, glass etc in the clips.

Still struggling with cubes ending up doing a bit too much bouncing at the top of the pressure / force gradient so to speak, and the force ending up in a bit to “square” of a shape when reaching the edges of the cube-shaped map.

u/NoAnimInteractive — 10 days ago
▲ 11 r/VoxelGameDev+1 crossposts

Trees are finally in my voxel game's world generation

For the past 6 months I've been working hard on my dream game, a hardcore multiplayer voxel survival game called Ender Lands. Players start in the Stone Age, collecting stones and sticks to build their first primitive tools, then gradually progress toward the Iron Age. They'll carefully manage resources, farm and gather food, craft tools, and build shelter to survive the cold winters.

u/void_src — 8 days ago
▲ 46 r/VoxelGameDev+2 crossposts

SnazzCraft Development

My latest work on SnazzCraft was improving the lighting engine. Previously entire faces had one light value and light as a visual felt very unnatural. What I've done here is create a thirty two bit float for each vertex that stores a light value. When the GPU renders each triangle in a voxel, it will extrapolate the per-pixel light value based off of the three light values in each of the triangles vertices. You can see how smooth this is by looking at the wall I created in the right of the frame. To do this I did some research on how the original MineCraft Console Edition's lighting engine worked.

For this project I am using C++ with OpenGL. I am considering switching this to a Vulkan project due to some limiting factors of OpenGL. The inability to multi thread and the inability to manually manage memory are the most apparent limitations related to OpenGL and this project. I implemented a thread pool in which the program can hand tasks to have executed concurrently. This is primarily used in the generated process, but is severely limited due to the previously mentioned OpenGL limited of the inability to interact with the GPU concurrently across multiple threads.

The blue rectangle seen towards the center right of the frame is an entity. SnazzCraft's entity system can handle a dynamic amount of entities, each with their collision and movement.

Project Github:

https://github.com/Mr-Snazz/SnazzCraft

u/Mr-Snazz — 10 days ago
▲ 48 r/VoxelGameDev+1 crossposts

How i can make semi transparent blocks in voxel games using raylib?

so i'm working on a voxel game something 3D i added tree leaves block that had been semitransparent or voids in the texture that should be transparent thing is the side of other block that just hidden by the tree leaves block doesn't get rendered, how do i fix it? it's in C language btw and here is a vid that better explains it i did do some fixing where if there is air in between but still no way done, how can i do it?

EDIT: I fixed it, big thanks to everyone who commented

u/NebulaIntelligent817 — 12 days ago
▲ 102 r/VoxelGameDev+2 crossposts

Voxel Engine #2 - Basic Mechanics, Placement, Lighting Engine

Another 2.5 weeks of dev on my new Voxel Game engine. Lots of iterative improvements to the engine and implementation of the basic core mechanics.

I don’t see these mechanics as being the fundamental basis of the game, but rather just the baseline essential requirements for an interactive sandbox which deeper mechanics can be built on top of.

— Placement System —

I enjoyed working on a placement system last week. The system supports two kinds of placement:

- World Blocks: directly writes voxels to the world grid as part of the terrain. Designed for structures, although no build tooling yet so it’s basically unusable 😅

- World Anchor Entities: certain items spawn entities in the world which support their own mechanics. These entities can either be anchored to the terrain, or to other entities.

I was happy with how anchoring turned out. For terrain, entities must retain a sufficient base attachment, depending on size. Items such as Torches can be freely placed against other entities (e.g trees, fenders posts rocks) and are invalidated if their source anchor is destroyed.

— Lighting System —

Currently supporting a form of Global illumination by implementing a coarse light propagation grid of probes around the player. Each frame propagates light sources through the grid, and applies occlusion while also weighting propagation based on local voxel occupancy.

The video only shows this working for terrain. Entities are supported, but currently having issues with flickering when compositing entities local occupancy volume onto the world grid.
In this case, entities only sample the probes, but the next update should fix this.

Colour propagation is also supported, and emmisive materials will also trivially work. Color transport manipulation will also be possible (e.g surface color reflection and filters (like stained glass), but not yet implemented.

My priority initially was performance. Lighting calculation currently only takes 0.3ms in a 16ms frame.

— Device —

Currently running on Apple M1 Pro between 40-100 FPS. Stable Memory usage around 3.5 GB Shared Memory, with GPU voxel data taking 2.9 GB of that.

Will need to improve memory as the game scales and to support discrete GPUs with lower absolute VRAM, but that will come in time :)

youtu.be
u/MGMishMash — 13 days ago