| Age | Commit message (Collapse) | Author |
|
|
|
- Preview quality is crude but works good enough.
- Add scaling to render function. This helps to make the preview
faster because we can use the same result for several pixels.
- You can move around the camera a bit with wasd, super basic.
- Press R to start/stop rendering the scene.
|
|
- Made the traits into supertraits so we don't have to mention Send and
Sync everywhere.
- Add methods for Vec3 that modifies the existing Vector. Can be used
to make less copies.
|
|
|
|
- All data shared between threads are now Arcs since the data is
immutable.
- Remove tokio
- Rustified main
|
|
- Created a trait for all geometry that has to implement a hit
function. Depending on if the ray hits or not it returns an option
with the color.
- Add support for multiple samples per pixel
Current issues:
- Using cooperative multitasking which isn't that
helpful in this situation since it's like running without async but
without overhead. Should switch to rayon.
- All data gets copied once per job. Will decide later what to
do (copy or put locks and share data between jobs).
|
|
|
|
Creating a bunch of futures that when completed get the buffers copied
to the screen buffer updating the screen as it gets done.
It's a bit overkill to create a future per row but it can be changed
later.
Moved hsv_to_rgb to utils. Don't even think it will be needed later.
|
|
|