skip to content
==> README.md <==
1# @ajax/pathtrace-tile
2
3A tile's columns and whole tiles: a column's pass sums and digest (`column_pass`), the fold of one pass
4into the accumulators followed by the tone map (`fold_column`, `retone`), and the same over a tile on one
5thread (`tile_pass`, `tile_fold`, `tile_retone`) — one column a GPU lane, or 32 columns in a loop on a CPU
6or wasm thread. The accumulation order is fixed, so a tile rendered pass by pass or all at once has the
7same bits.
8
9Also the two headers that make the renderer usable: `pathtrace/instantiate.h` (define the float contract
10of `@ajax/pathtrace-math`, include this, get every function) and `pathtrace/declare.h` (the prototypes for
11one suffix). Template headers, freestanding.
12
13**Ported from** `crates/pathtrace-core/src/lib.rs` (`col_digest`, `column_pass`, `fold_column`, `retone`,
14`tile_pass`, `tile_fold`, `tile_retone`). **Tested** through the renderer golden tests.
15
16## Differences
17
18- Rust's `(u64, u64)` digest pairs are out parameters.