Перейти к содержимому

Paths as vertices · rayracer 16 · a ray tracer in tape

Tape Language

0:00 / 0:00

Paths as vertices · rayracer 16 · a ray tracer in tape

6 просмотров · 7 дн. назад
Tape Language
3 подписчика
6 просмотров · 7 дн. назад
The camera's path written down first — a list of vertices (render/path.tape: Vertex, Path, camera_path, light_along, trace_paths) — then lit; with the bounces and the light picks drawn from two random streams it gives trace's picture to the bit, proven by a test and by whole renders (--paths). What both ways share lives in render/lighting.tape. After this episode, you can: Move a group of functions into a module of its own (cut, paste, pub, one import), and show with a fingerprint that nothing changed. Explain why the order random numbers are drawn in decides which picture comes out, and keep two jobs apart with two seeded streams. Write a path down as a list of vertices (what was hit, the ray, the albedo, β, the bounce's pdf) and add its light up afterwards. Prove two computations equal to the bit with a test (!=, not "near"), and see the test fail when the streams are shared. Chapters 0:00 Closing too soon 2:06 Walking and lighting 6:39 Two streams 11:29 A vertex 15:11 The walk 18:14 The light along it 21:54 Proof 25:16 Whole pictures Credits Skies and textures by Poly Haven, CC0: https://polyhaven.com/a/palermo_square https://polyhaven.com/a/venice_sunset Everything here is written in tape, a programming language of our own: https://www.tapelang.org Made with a combination of AI, automation and human work, and with a love for programming.