diff options
author | Kartik Agaram <vc@akkartik.com> | 2020-10-03 00:24:57 -0700 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2020-10-03 00:24:57 -0700 |
commit | b94e94e0353c94714eff65aae9b47bb117999bba (patch) | |
tree | 930076b27cbc418cb62f74dbc569a19f8a237519 /apps/raytracing/1.cc.0 | |
parent | ab1cf1593ac47f087432591736f54bd977de968c (diff) | |
download | mu-b94e94e0353c94714eff65aae9b47bb117999bba.tar.gz |
6927 - working on a raytracing tutorial
https://raytracing.github.io/books/RayTracingInOneWeekend.html
Diffstat (limited to 'apps/raytracing/1.cc.0')
-rw-r--r-- | apps/raytracing/1.cc.0 | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/apps/raytracing/1.cc.0 b/apps/raytracing/1.cc.0 new file mode 100644 index 00000000..13d5a1b6 --- /dev/null +++ b/apps/raytracing/1.cc.0 @@ -0,0 +1,28 @@ +// https://raytracing.github.io/books/RayTracingInOneWeekend.html +#include <iostream> + +int main() { + + // Image + + const int image_width = 256; + const int image_height = 256; + + // Render + + std::cout << "P3\n" << image_width << ' ' << image_height << "\n255\n"; + + for (int j = image_height-1; j >= 0; --j) { + for (int i = 0; i < image_width; ++i) { + auto r = double(i) / (image_width-1); + auto g = double(j) / (image_height-1); + auto b = 0.25; + + int ir = static_cast<int>(255.999 * r); + int ig = static_cast<int>(255.999 * g); + int ib = static_cast<int>(255.999 * b); + + std::cout << ir << ' ' << ig << ' ' << ib << '\n'; + } + } +} |