From 18d4c6cf9fabc18282b29d103c8d30024f66e49b Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Thu, 19 Feb 2026 05:02:26 +0400 Subject: feat(render-parity): add deterministic frame comparison tool - Introduced `render-parity` crate for comparing rendered frames against reference images. - Added command-line options for specifying manifest and output directory. - Implemented image comparison metrics: mean absolute difference, maximum absolute difference, and changed pixel ratio. - Created a configuration file `cases.toml` for defining test cases with global defaults and specific parameters. - Added functionality to capture frames from `render-demo` and save diff images on discrepancies. - Updated documentation to include usage instructions and CI model for automated testing. --- parity/README.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 parity/README.md (limited to 'parity/README.md') diff --git a/parity/README.md b/parity/README.md new file mode 100644 index 0000000..dd338bc --- /dev/null +++ b/parity/README.md @@ -0,0 +1,20 @@ +# Render Parity Dataset + +This folder stores parity-test input for `crates/render-parity`. + +- `cases.toml`: list of deterministic render cases. +- `reference/*.png`: baseline frames captured from the original renderer. + +Expected workflow: + +1. Capture baseline PNG frames from original game/editor for each case. +2. Add entries to `cases.toml`. +3. Run: + +```bash +cargo run -p render-parity -- \ + --manifest parity/cases.toml \ + --output-dir target/render-parity/current +``` + +On failure, diff images are saved to `target/render-parity/current/diff`. -- cgit v1.2.3