A ray marching renderer in rust
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
rmarcher/README.md

30 lines
781 B

# rmarcher
A ray marching renderer in rust
![small example](prod/small.png)
## Dependencies
- `rust >= 1.51` for const generics
- `crossbeam` && `crossbeam-channel` for multithreading
- `rand` for rng
- `image` for png export
- `rlua` for lua scene building
## What currently works
- Simple shapes (half-spaces and spheres are the only tested ones so far)
- Spectral simulation (currently using 4 color components)
- Global illumination (with diffuse and reflective surfaces)
- Punctual illumination
## What is planned
- Testing of more shapes
- Support for a lua-based scene representation DSL
- Support for linking against a `scene.so` exporting a scene
- Support for using as a library
## Examples
![1st test scene](prod/1.png)
![2nd test scene](prod/2.png)
## License
MIT