Original forced perspective and PTD helper studies Native geometry Blender 5.2.3 LTS Release Candidate build fab76e95306d Cycles 32 samples with denoising Standard view transform Y world up Two authored spheres and two cameras with a 35 mm lens and 36 mm sensor width Camera depth of field disabled No captured photograph or AI-generated scene blender --background --factory-startup --python-exit-code 1 --python build-forced-perspective-scene.py -- /absolute/new-output The builder checks both objects remain inside both camera frames before rendering It saves beauty images ID emission passes native geometry and projected vertex records A different renderer build or platform can change pixels Numerical and artwork assets Place perspective-ptd-study.ts beside build-perspective-ptd-assets.ts Install sharp@0.34.5 in that isolated folder Use Bun 1.3.11 bun build-perspective-ptd-assets.ts /absolute/new-output The output folder must already contain the two native beauty PNGs for the cover artwork uv run --no-project --with numpy --with pillow python verify-perspective-native.py /absolute/new-output The mask verifier checks saved silhouettes against native projected vertex bounds Center-plane pinhole heights are a separate planning quantity from curved sphere bounds PTD source helpers on CPU Pinned small source file https://huggingface.co/taobao-content-ai/MiniMax-H3-PTD-LoRAs/resolve/32d5dfb2b2cc4fc3f5dfef541bdcb23e30f9e2ec/minimax_h3_ptd.py SHA256 96c52989cf81e52146beb604078fa01806f1a076771b848a37e57679623e4142 Place ptd-source-audit.json in the output folder uv run --no-project --python 3.12 --with torch==2.9.1 --with numpy==2.3.5 --with safetensors==0.6.2 python verify-ptd-source.py /absolute/minimax_h3_ptd.py /absolute/new-output The harness verifies the source hash before importing it It executes pdd_time_grid pdd_sampling_plan and PerHopLoRALinear on original tiny CPU tensors Four schedule cases compare against independent NumPy and the saved browser helper records Twelve authored per-hop linear cases compare against independent arithmetic Unloaded adapter behavior and hop clamping are also checked These CPU library versions describe the helper test not a recommended full GPU installation Boundaries No full checkpoint weights downloaded No apply_ptd_lora call on a real model No Diffusers generation pipeline ComfyUI queue or GPU inference run No model quality speed peak memory or frame rate benchmark Metadata examples are authored release-shaped JSON not extracted tensor headers The planner restricts its scope to the documented four and eight hop release profiles The stored block field can be stale so it is reported while a block is derived from intervals divided by hops