A voxel based raytracer written in rust. Well, raycaster for now (no light bounce yet).
cargo run --release --example render_complex10
then look at ./renders
directory. File output is in .ppm
format which should be viewable in linux
Rendering took ~400 seconds on Intel Core i7, that is excluding the calculation and smoothing of normals.
The a voxel grid which is capable of holding (2^10)^3 = 1,073,741,824 voxels. Of course, I stripped out the empty voxels and the completely occluded voxels The gold color in hardcoded in the raytracer. So, everything will be golden.
Fully solid statue has 26,637,838 voxels (includes the occluded voxels, which is 2% of the total maximum grid space). Consumes a whooping 6.4 GiB of memory
The final carved out statue contains 2,102,146 surface voxels which is 8% of the total solid statue and 0.20% of the maximum space grid space. It consumed only 700 MiB of memory which includes the calculated normals for each surface voxel.
Daily Progress is logged in Progress.md
Daily Todo's is logged in TODO.md
Make OpenCL graphics rendering pipeline. (https://github.com/luqmana/rust-opencl)
Lattice matrix transformation
Particle System - uses grid voxel, rather than octree
Physics addition (https://github.com/sebcrozet/nphysics), voxel collision should be easy
Follow me on twitter: @ivanceras