The ray tracer challenge in rust - Repository to follow my development of "The Raytracer Challenge" book by Jamis Buck in the language Rust

Overview

The Ray Tracer Challenge

This repository contains all the code written, while step by implementing Ray Tracer, based on the book "The Ray Tracer Challenge" by Jamis Buck, which presents the concept in fully test driven way.

I am implementing all the chapters of this book in Rust, a language I wanted to learn for quite some time, but never got the time or the right project for. I have never written anything in Rust before, so please bear with me, if the code isn't perfect.

I furthermore decided to create a YouTube series of me learning Rust and having some fun, while implementing chapter by chapter of the book. You are welcome to join me and follow allow while I am working on this week for week.

Join me during my development

What has been implemented so far?

  • Chapter 01: Tuples, Points, and Vectors
  • Chapter 02: Drawing on a Canvas
  • Chapter 03: Matrices
  • Chapter 04: Matrix Transformations
  • Chapter 05: Ray-Sphere Intersections
  • Chapter 06: Light and Shading
  • Chapter 07: Making a Scene
  • Chapter 08: Shadows
  • Chapter 09: Planes
  • Chapter 10: Patterns
  • Chapter 11: Reflection and Refraction
  • Chapter 12: Cubes
  • Chapter 13: Cylinders
  • Chapter 14: Groups
  • Chapter 15: Triangles
  • Chapter 15: Constructive Solid Geometry (CSG)
You might also like...
Search and read 'The Rust Book' from the terminal
Search and read 'The Rust Book' from the terminal

TheBook TheBook is a command line utility that allows you to SEARCH and READ The Rust Programming Language (popularly known as 'The Book' ) from the t

Book - Actix user guides

User guides Actix User Guide Actix API Documentation (Development) Actix API Documentation (Releases) Actix Web User Guide Actix Web API Documentation

Complete code for the larger example programs from the book.

Code Examples for Programming Rust This repository contains complete code for the larger example programs from the book “Programming Rust”, by Jim Bla

Majestic Lisp book and implementation, in Brazillian Portuguese.

Majestic Lisp Criado e desenvolvido por Lucas S. Vieira lucasvieira at protonmail dot com. Seja bem-vindo(a) a Majestic Lisp, um dialeto de Lisp cuj

Generate SUMMARY.md files based on your book's file structure

mdbook-autosummary Generate a SUMMARY.md for your mdBook based on your folder structure! Warning The implementation is hacky and has several limitatio

Game development practices with Rust programming language. I want to use different crates for this.

Hazır Oyun Motorlarını Kullanarak Rust Dili Yardımıyla Oyunlar Geliştirmek Rust programlama dilinde oyun geliştirmek için popüler birkaç hazır çatıyı

In this repository you can find modules with code and comments that explain rust syntax and all about Rust lang.
In this repository you can find modules with code and comments that explain rust syntax and all about Rust lang.

Learn Rust What is this? In this repository you can find modules with code and comments that explain rust syntax and all about Rust lang. This is usef

This repository contains the Rust source code for the algorithms in the textbook Algorithms, 4th Edition

Overview This repository contains the Rust source code for the algorithms in the textbook Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne.

Rust template repository.

Rust template repository. An opinionated starting point for rust projects such as systemd services command line tools client programs server programs

Comments
  • Range don't include last element by default

    Range don't include last element by default

    Hi i found a little mistake in your test, Range don't include last element by default, so you don't need to do -1 here.

    https://github.com/jakobwesthoff/the_ray_tracer_challenge_in_rust/blob/1696169b884652049821ad94e1717ea18bc006cc/src/canvas.rs#L207-L211

    opened by ModPhoenix 1
Owner
Jakob Westhoff
🎁 https://www.amazon.de/hz/wishlist/ls/QF2PWX19FA74
Jakob Westhoff
Small ray tracer demo of the F# to Rust language transpiler in Fable 4.x

Small ray tracer demo of the F# to Rust language transpiler in Fable 4.x

null 45 Nov 16, 2022
This repository contains the source of "The Rust Programming Language" book.

The Rust Programming Language This repository contains the source of "The Rust Programming Language" book. The book is available in dead-tree form fro

The Rust Programming Language 11.2k Jan 8, 2023
A repository for showcasing my knowledge of the Rust programming language, and continuing to learn the language.

Learning Rust I started learning the Rust programming language before using GitHub, but increased its usage afterwards. I have found it to be a fast a

Sean P. Myrick V19.1.7.2 2 Nov 8, 2022
clone of grep cli written in Rust. From Chapter 12 of the Rust Programming Language book

minigrep is a clone of the grep cli in rust Minigrep will find a query string in a file. To test it out, clone the project and run cargo run body poem

Raunak Singh 1 Dec 14, 2021
Learn programming with Rust as a first language (book)

Learn programming with Rust as first language This is a book to learn programming from scratch. Read the book here: https://deavid.github.io/lprfl/ LI

David Martínez Martí 2 May 21, 2022
Ray Tracing: The Next Week implementation in Rust

rttnw Ray Tracing: The Next Week implementation in Rust How to run Install Rust: Link here. Run project git clone https://github.com/luliic2/rttnw cd

null 20 Apr 26, 2022
A library for extracting #[no_mangle] pub extern "C" functions (https://docs.rust-embedded.org/book/interoperability/rust-with-c.html#no_mangle)

A library for extracting #[no_mangle] pub extern "C" functions In order to expose a function with C binary interface for interoperability with other p

Dmitrii - Demenev 0 Feb 17, 2022
Source code for the book Rust in Action

Welcome to Rust in Action source code This source code repository is a companion to the Rust in Action book available from Manning Publications. Suppo

Rust in Action 1.3k Dec 30, 2022
Rust crate to implement a counterpart to the PBRT book's (3rd edition) C++ code.

Rust crate to implement a counterpart to the PBRT book's (3rd edition) C++ code.

Jan Walter 763 Dec 27, 2022
High Assurance Rust - A free book about developing secure and robust systems software.

High Assurance Rust - A free book about developing secure and robust systems software.

Tiemoko Ballo 1.1k Jan 9, 2023