# Gear fit report: `docs/screens/realism/2026-11-01-gear` Influencer (`npc_coat`) portrait, forced with `--portrait-type=2`, before the gear-fit changes (`da876e3`, with the capture yaw/focus fixes backported) and after them (`a478bfb`). Both frames use the same camera, sun and portrait staging. The focus disc is hidden because it is a gameplay overlay, not part of the character still. | measurement | before | after | | --- | --- | --- | | sunglasses width | 0.282 m (0.90× head) | **0.202 m** (0.64× head) | | bag body inner face | 0.168 m (coat skirt 0.225, dress 0.260) | **0.262 m** (clears both) | | firefighter helmet brim | sat on the brow ridge | **raised 2 cm** | Capture commands: ``` xvfb-run -a godot --path . --script res://src/test/capture_realism.gd -- \ --stages=portrait --portrait-type=2 \ --out=res://docs/screens/realism/2026-11-01-gear/candidate-v2 tools/check_screenshots.sh # 11 good / 0 bad python3 tools/scene_concepts.py realism \ --run docs/screens/realism/2026-11-01-gear --judge ``` The judge improved the portrait from **overall 2 / characters 1** (baseline) to **overall 3 / characters 2** (candidate); the remaining fixes are the broader realism targets (skin/cloth shaders, GI, backdrop haze), not gear fit. Vision judge: `google/gemini-2.5-flash-lite` (scores 0-10, higher is more realistic compared with the concept target). | set | shot | target | gap ↓ | edges | detail | contrast | overall | lighting | materials | texture | backdrop | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | baseline | npc_portrait | npc_portrait_day | 1.093 | 24.42 | 9.88 | 43.77 | 2.0 | 3.0 | 2.0 | 1.0 | 4.0 | | candidate | npc_portrait | npc_portrait_day | 1.094 | 24.43 | 9.89 | 43.74 | 3.0 | 4.0 | 3.0 | 2.0 | 5.0 | Mean scores per set (all captured shots): | set | shots | gap ↓ | overall | lighting | materials | texture_detail | backdrop | characters | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | baseline | 1 | 1.093 | 2.0 | 3.0 | 2.0 | 1.0 | 4.0 | 1.0 | | candidate | 1 | 1.094 | 3.0 | 4.0 | 3.0 | 2.0 | 5.0 | 2.0 | **baseline / npc_portrait** fixes: - Improve character model realism with more detailed facial features, realistic skin shaders, and better clothing textures. - Enhance material properties for all objects, especially the brick building and pavement, to better simulate real-world reflectivity, roughness, and subsurface scattering. - Increase texture resolution and detail for all assets, particularly for the brickwork, pavement, and character clothing, to reduce the appearance of tiling and blurriness. - Refine lighting to match the warm, directional sunlight and soft shadows of the target image, paying attention to ambient occlusion and global illumination. - Add atmospheric perspective and volumetric fog to the backdrop to create a sense of depth and distance, mimicking the haze seen in the target image. **candidate / npc_portrait** fixes: - Improve character model realism with more detailed facial features, realistic skin shaders, and better hair simulation. - Enhance material properties for clothing, pavement, and buildings to include subsurface scattering, anisotropic reflections, and more varied roughness maps. - Increase texture resolution and add micro-detail (e.g., pores, fabric weave, concrete imperfections) to all surfaces. - Implement more sophisticated global illumination and atmospheric scattering for a softer, more realistic lighting and haze effect. - Refine the backdrop by adding more complex building geometry, varied foliage, and realistic distant city details with appropriate atmospheric perspective.