The Ray Tracer Challenge - 024 - Stripes

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ก.ค. 2024
  • Implementing Patterns allows for the creation of more lifelike looking objects and scenes. This session will lay the cornerstones to do so.
    Join me, while I implement chapter by chapter from the book "The Ray Tracer Challenge" by Jamis Buck in Rust a language completely new to me.
    Come with me on the journey of learning the Rust programming language, while implementing a Ray Tracer in a Test driven fashion, to have fun and (hopefully) create some astonishing rendered graphics.
    Let's study the inner workings of a Ray Tracer, and take a look under the hood of the Rust language, while taking on this challenge on a weekly basis.
    All the code produced within this series is provided on github, for you to
    follow along.
    Github: github.com/jakobwesthoff/the_...
    The Ray Tracer Challenge (affiliate): amzn.to/3xVssbR
    Rust: www.rust-lang.org/
    Contents
    00:00 - Intro
    00:34 - Recap
    02:25 - Patterns
    04:54 - Static Dispatch for Patterns
    10:24 - Striped Pattern
    20:33 - Using the Pattern
    28:53 - FuzzyEq for Option
    32:06 - Color based on Pattern
    36:45 - Pragmatically rendering Patterns
    37:54 - First striped rendering
    41:27 - Outro
    #raytracer #rustlang #pattern
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 5

  • @rubenruiz3888
    @rubenruiz3888 2 ปีที่แล้ว

    awesome results !

  • @luisluisluis4155
    @luisluisluis4155 2 ปีที่แล้ว

    Hello, I have followed all your raytracing videos in detail. I think it has been a fun, rewarding and instructive experience, I also recognize that you have to have a lot of courage to "get into the pool, without knowing how to swim" as you have done with the Rust language. I hope you continue with this topic or create other topics with the Rust language, which is a language with great potential...I'll keep waiting for a new chapter...Greetings.

    • @MrJakob
      @MrJakob  2 ปีที่แล้ว +1

      Thanks for your kind words. I am definitely planning on continuing this series further. I worked on a related project over the holidays, which I am eager to publish as I think a lot of viewers would be interested in that. Therefore this project will be the next video coming up. After that I will continue my regular videos on the raytracer. Unfortunately until now the new year was quite packed with work. But I hope to be back to my regular release schedule very soon.

  • @TheJoaovini
    @TheJoaovini 2 ปีที่แล้ว

    in the "color_at" function you have to guarantee not to have negative values, the correct thing would be:
    if x.floor().abs() as isize % 2 == 0
    the "assert_eq!(p.color_at(Tuple::point(-0.1, 0., 0.)), Color::black());" test would not pass

    • @MrJakob
      @MrJakob  2 ปีที่แล้ว +1

      Thanks for the hint. I will take a look at it the next time I am working on the raytracer 👍🤗