milner
5f81ab227d
feat(run): run blocks for commands the build does not produce
2022-07-21 16:25:46 +00:00
milner
9678f30767
feat(examples): add the C++ benchmark and three test targets
...
A C++ consumer of the C archives, plus maths, scene and image tests driven by
meowc test.
2022-07-10 04:57:31 +00:00
milner
61836941e7
feat(examples): add the render binary and its argument handling
...
Scene, dimensions, sample count and thread count from the command line, with
defaults read out of the generated config header.
2022-07-07 21:07:20 +00:00
milner
6b6a16be04
feat(examples): generate scene translation units from .scene files
...
scenegen.py compiles each scene into a C source and header, driven by a rule
block with per-input stem expansion.
2022-07-07 12:27:02 +00:00
milner
9a29cc7b93
feat(examples): add a zlib backed PNG encoder
...
Real PNG output through deflate, which is what makes the pkg-config
dependency load bearing rather than merely declared.
2022-07-06 16:04:09 +00:00
milner
a1173c73b6
feat(examples): add the image buffer and a PPM writer
...
RGB framebuffer with tone mapping, and PPM output for the path where zlib is
unavailable.
2022-07-04 09:14:34 +00:00
milner
13409a1e8b
feat(examples): add shading, the threaded render loop and two scenes
...
Lambertian and metal shading with recursive bounces, a row-claiming loop
across worker threads, and the studio and rings scene files.
2022-07-02 12:49:50 +00:00
milner
09d072a658
feat(examples): add the scene representation, camera and intersection
...
Sphere and plane records, camera ray generation from field of view and aspect
ratio, and the nearest-hit search across the scene.
2022-07-02 02:41:00 +00:00
milner
f313b97363
feat(examples): add vector maths and an xorshift RNG
...
vec3 operations and a per-thread random stream, the leaf library everything
else in the example depends on.
2022-06-30 11:37:33 +00:00
milner
816b1ee594
feat(examples): add the raytracer build file and core header
...
Nine targets: two translation units generated from scene files, a C++
consumer, a shared object built from the same sources as the archives, and an
optional zlib dependency.
2022-06-30 00:29:57 +00:00