Commit Graph

5 Commits

Author SHA1 Message Date
49569528fa Mark v1, release under AGPL-3.0 license
I'm marking v1 here before I make any more changes. I would have liked
to make v1 the last change I made when finishing the Ray Tracing in One
Weekend book, but I did not.

The project shall be AGPL v3-only. I'm indicating this both in a LICENSE
file and in the Cargo.toml's project.license table because not all tools
understand both pathways.
2025-11-11 17:01:47 -06:00
8548e4e322 Update dependency versions
It's been a couple years and there are new versions of these libraries.
Bump and relax constraints (I don't need exact patch levels, that's what
a lockfile is for).
2025-03-01 12:56:36 -06:00
c8726a4d9a Bump edition to 2024 in Cargo.toml 2025-03-01 12:32:33 -06:00
fc8f9e0e15 Starting to get a hold of the Tile struct
Iterators are turning my brain to mush. I'm trying far too hard to
leverage existing iterator tooling. The closures all over the place make
saying the type names basically impossible. For chaining in the middle
of a function, this is fine. But I need to stick it in a `struct Tile{}`
and move it between threads.

This commit is a save point for my own sanity, more than anything else.
The tile struct exists and compiles. The only changed part is the
extraction of the pixel sampling loop into a named function (instead of
an nameless closuuuruurreeee)
2023-08-19 17:12:28 -05:00
5cc0b49cd9 Mid-Material save point
I get lazy with commits when following guided material. There's a design
challenge to approach, now. I'm saving here so I can revert changes in
case it goes sideways.

Materials are proving to be a little complicated in Rust semantics. The
Ray Tracing in a Weekend book uses shared_ptr's, but Rust doesn't really
like that. I'm doing references with lifetime annotations. Hopefully I
can get that the right way around to work out.

The materials themselves look like reasonable candidates for describing
as Enums. This takes away the ability to add new ones by simply impl'ing
a trait, but that was never gonna happen anyway. The code would be
modified and recompiled. There's no difference in maintenance cost if
that's a new struct impl'ing a trait, or adding enum members.
2023-06-03 09:48:54 -05:00