Scrawk / Mesh-Voxelization

Mesh voxelization in Unity

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Mesh-Voxelization

This project converts a mesh into voxels in Unity. The idea is to ray trace the mesh and find where each ray intersects a triangle. These positions can then be used to make a 3D array of voxels.

The ray tracing is accelerated by using a AABB tree to group the mesh triangles. The AABB tree should be much faster for large meshes but the overhead might not be worth it for smaller meshes.

The original code for the AABB tree can be found in the core section of this collection of code from Miles Macklins blog.

For the demo scene the voxels are converted back into a mesh by adding quads at the edge of each voxel.

The mesh before voxelization.

Before voxelization

The mesh after voxelization.

After voxelization

About

Mesh voxelization in Unity

License:MIT License


Languages

Language:C# 100.0%