feat(hero): seeded RNG, 2D simplex, curl-noise flow field #27

Open
patman wants to merge 1 commit from patman/hero-field into patman/hero-scaffold AGit
Owner

PR 2/7 in the hero-toolpaths stack (prev: hero-scaffold #26, next: hero-racers). mulberry32 PRNG and a seed-shuffled Gustavson 2D simplex, composed into a divergence-free curl-noise field (Bridson et al. 2007, cited in doc comments). Heading-only sampling via central differences — allocation-free, four noise evals per sample. Per-head domain offsets give similar-but-different streamlines. Review focus: simplex correctness against the cited reference; the curl/atan2 derivation comment in FlowField.heading.

PR 2/7 in the hero-toolpaths stack (prev: hero-scaffold #26, next: hero-racers). mulberry32 PRNG and a seed-shuffled Gustavson 2D simplex, composed into a divergence-free curl-noise field (Bridson et al. 2007, cited in doc comments). Heading-only sampling via central differences — allocation-free, four noise evals per sample. Per-head domain offsets give similar-but-different streamlines. Review focus: simplex correctness against the cited reference; the curl/atan2 derivation comment in FlowField.heading.
feat(hero): seeded RNG, 2D simplex, curl-noise flow field
All checks were successful
CI / build-test (pull_request) Successful in 1m16s
39c13976c0
mulberry32 PRNG and a seed-shuffled Gustavson 2D simplex, composed into
a divergence-free curl-noise field (Bridson et al. 2007). Heading-only
sampling via central differences — allocation-free, four noise evals per
sample. Per-head domain offsets give similar-but-different streamlines.
patman force-pushed patman/hero-field from 39c13976c0
All checks were successful
CI / build-test (pull_request) Successful in 1m16s
to 53f55bd8be
All checks were successful
CI / build-test (pull_request) Successful in 1m20s
2026-06-12 21:12:27 +00:00
Compare
All checks were successful
CI / build-test (pull_request) Successful in 1m20s
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin +refs/pull/27/head:patman/hero-field
git switch patman/hero-field

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch patman/hero-scaffold
git merge --no-ff patman/hero-field
git switch patman/hero-field
git rebase patman/hero-scaffold
git switch patman/hero-scaffold
git merge --ff-only patman/hero-field
git switch patman/hero-field
git rebase patman/hero-scaffold
git switch patman/hero-scaffold
git merge --no-ff patman/hero-field
git switch patman/hero-scaffold
git merge --squash patman/hero-field
git switch patman/hero-scaffold
git merge --ff-only patman/hero-field
git switch patman/hero-scaffold
git merge patman/hero-field
git push origin patman/hero-scaffold
Sign in to join this conversation.
No description provided.