Skip to content

martingoe/raytracer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Raytracer

License: MIT

This is a very simple raytracer that supports STL files, multithreading and (soft) shadows. With that being said, it is still a work in progress.

Reasoning behind this project

Rendering objects in games and animated videos has always been dark magic for me and with realtime raytracing coming to relatively new GPUs, I finally decided start learning about rendering and the math behind it.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

You will need to have the following programs installed on your system:

  1. Rust

Installing

Clone the repository to your local machine

git clone https://gitlab.com/CubeArrow/raytracer.git

Change directory to Cubelang

cd raytracer

Run the program

./cargo run --package raytracer --bin raytracer

Built With

  • Rust - The programming language
  • Theadpool - A threadpool for multithreading

Examples

Mengers Sponge M2

Sponge

The Utah Teapot

Teapot

Eiffel Tower

EiffelTower

Feathers - The first image rendered with mapped materials

Feathers Model and material taken from a model by skartemka

Resources

These are very useful resources that I have used to get started with this project

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

A simple raytracer in rust.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages