RaytracerGO/README.md

27 lines
1.9 KiB
Markdown
Raw Normal View History

2024-01-25 08:12:45 +00:00
# RaytracerGO
2024-01-25 09:08:24 +00:00
A raytracer and renderer writen in Go (Golang) following the book [Raytracing in one weekend](https://raytracing.github.io/books/RayTracingInOneWeekend.html#overview)
2024-01-25 08:39:51 +00:00
2024-01-25 08:40:22 +00:00
## Motivation
2024-01-25 08:39:51 +00:00
I've been meaning to tinker with graphics for quite a while and was motivated by a video programming a raytracing algorithm on a TI-84. Back in my school days I used to love to tinker with the TI-84 and also did some very elementary programming on it myself.
2024-01-25 09:08:24 +00:00
Video that started it all:
[Raytracing on a Graphing Calculator (again)](https://youtu.be/rY413t5fArw)
2024-01-25 08:46:19 +00:00
2024-01-25 09:15:02 +00:00
<img src="https://www.techeblog.com/wp-content/uploads/2022/12/ray-tracing-ti-84-plus-ce-graphing-calculator.jpg" alt="TI-84 Raytracing" width="720"/>
2024-01-25 08:39:51 +00:00
2024-01-25 09:08:24 +00:00
## Why Go?
The story starts with Zig. A few colleagues of mine and I tried to work on a Guake-like browser using Zig. We chose Zig because it's C-like, modern and because their mascot is a lizard, of course. But I don't like Zig all that much, and right now Go has caught my attention.
2024-01-25 09:11:07 +00:00
I like the language a lot, it's still very C-like, doesn't have classes :), is open-source and resembles Python a lot, while still being fast and having crazy fast compiling speeds (which is something I've started to appreciate since dabbling with Linux From Scratch). The only draw back of Go is that it is a little bit slower than C++, but I just want to experience what the Python-version of C is like :)
2024-01-25 09:19:50 +00:00
<img src="https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fprogramaenlinea.net%2Fwp-content%2Fuploads%2F2020%2F04%2Fgolang-1024x516.png&f=1&nofb=1&ipt=363a10979aa43c8925c481b76c8a2b03a50ce948b3548b40a29432caf8a534d1&ipo=images" alt="Go-Programming" width="720"/>
## Taglibro
2024-01-25 09:20:22 +00:00
### Chapter 1: The PPM-image format
2024-01-25 09:19:50 +00:00
2024-01-25 19:47:28 +00:00
<img src="https://raytracing.github.io/images/img-1.01-first-ppm-image.png" alt="First PPM image" width="480"/>
Yay this is the first image I've ever generated without using any external imported library ^^