The viewer supports pulling artifacts based on PR number, and now
we support providing Run ID as an alternative to identify the
renderdiff run on Github CI.
Since #9259, CString in VulkanPlatform fall into the literal
constructor path. But we really want the null-terminated
(char const*) path. So we cast the strings to (char const*)
to enforce null-teriminated behavior.
RDIFF_BRANCH=pf/renderdiff-add-tolerance
- Allow for presets to override selected models when presented
in order.
- Add 'gltf' for model search path
- Add a few simple gltf models to the 'base' preset
- Improve UI so that missing tests do not generate any html
bits.
- Add documentation on using the viewer
- Add renderdiff documentation to the project webpage.
RDIFF_BRANCH=pf/renderdiff-enable-webgpu
Add a way to show the difference between two rendererd image.
This is a convenience feature to see the differences between
backends.
Refactor the ExpandedFailedResult to use this new view.
- Move upload step to later so that comparison result is also
included in the upload
- Fix the wrong relative paths in the comparison_result.json
- Fix viewer logic to pick only the latest run for a PR.
Previously, if a comparison fails then the artifacts are not
uploaded. This is defeats the puprpose of having artifacts. We
fix that by moving the test logic into presubmit.yml.
local_test.sh is the way to repro a run from local machine.
- Modify the compare script to output more details of a
comparison. This will include the source/golden directory,
the comparison directory (the new renderings), and a file
path to difference images if the golden does not match
the rendered image.
- The image_diff script can now output a TIFF that is the
difference of two input TIFFs.
- Add a viewer for examining the differences between rendered
output and golden images.
- The viewer consists of a simple server of web API endpoints
for querying difference results (along with rendered images
in TIFF).
- And a web-based (html + lit-element) UI for looking at the
rendered images and differences.
- Move the comparison logic into its own script
- Add entry point bash script to generate the renderings
- Separate the preamble bash logic into its own file
- Moved get_mesa.sh to build/common/get-mesa.sh
- Moved check-headers.sh to test/check-headers/test.sh
- Moved check-metal-shaders.sh to test/check-metal-shaders/test.sh
Adding a python script to enable updating new goldens into
a staging branch in the golden repo (filament-assets).
The same script can be used in github workflow to automatically
create a golden staging branch. This will be useful for users
without access to a mac (the only platform for generating
goldens as of now).
- Re-enable renderdiff test.
- Cache the mesa directory so that we're not spending time pulling
and compiling it.
- Move python prereqs into the script and use venv.
PPM does not store alpha channel, but TIFF does. We add a method
to export RGBA to a TIFF file without compression.
We add the corresponding options to gltf_viewer and
AutomationEngine.
The default export format for both gltf_viewer and AutomationEngine
is now TIFF.
We use Mesa's gallium swrast to render as the driver with
Filament's backend set to GL. We provide a few scripts to parse
the tests (as jsons) and run gltf_viewer to produce the rendering.