Original specular and coverage mask studies Requires Bun with Sharp and Blender with Cycles Keep the companion scripts together and use new output directories bun build-specular-worldforge-inputs.ts NEW_INPUT_DIRECTORY blender -b --python-exit-code 1 --python render-specular-study.py -- NEW_INPUT_DIRECTORY NEW_NATIVE_DIRECTORY bun build-specular-worldforge-assets.ts NEW_INPUT_DIRECTORY NEW_NATIVE_DIRECTORY NEW_ASSET_DIRECTORY python3 audit-worldforge-documents.py --baseline worldforge-source-audit.json The source mask design and coverage fixture are original procedural images The native project packs the image used for its material comparison It saves the shader connected to Specular IOR Level with a constant roughness The roughness render deliberately connects the same image to a different socket No model inference calibrated reflectance recovery or WorldForge invocation is performed Coverage counts are for one saved mask with an explicit threshold and selected region They can include filled pixels and do not establish correctness or media acceptance JSON formatting may differ while reproducing the same data Independent arithmetic verification requires NumPy and Pillow uv run --no-project --with numpy --with pillow python verify-specular-worldforge-study.py ASSET_DIRECTORY Optional isolated save check additionally needs the pinned vggt/run_warp.py named by the audit Pass --pinned-save-source PINNED_RUN_WARP_FILE to check that source hash and pre-encoding save arrays