acdream/src/AcDream.App/Rendering/Shaders/spv/shaders.manifest.json
Erik b1e9912535 fix(render): jitter the volumetric march per pixel (IGN); file #421 for the shadow transform buffer (Campaign VM VM5)
Fixed step-count volumetric ray marches (Low/Medium presets, e.g. 40 steps)
sample the same t values at every pixel, so a shadow-cascade edge crossing
lands at the same march step across a whole neighbourhood of pixels and
reads as visible concentric banding around light shafts. Offset each
pixel's march phase with interleaved gradient noise (Jimenez 2014,
fract(52.9829189 * fract(dot(gl_FragCoord.xy, vec2(0.06711056,
0.00583715))))) instead of the fixed 0.5 sub-step center: t = (step + ign)
/ steps. This decorrelates the step boundaries across pixels, turning the
banding into fine per-pixel noise that the existing quarter/half-res
upsample already averages away. Pack-on only — atmospheric_volumetric is
never used on the retail default path; extinction, colour, and early-outs
are unchanged.

Regenerated SPIR-V via tools/compile-shaders.ps1: only
atmospheric_volumetric.frag.spv and shaders.manifest.json's source hash
for that stage changed.

Also files #421 (docs/ISSUES.md) for Campaign AR review finding F7: the
directional-shadow pass's DirectionalShadowTransformBufferSet duplicates
the main pass's N.5 instance SSBO instead of binding it, to be resolved
once the planned GPU-culling step for shadow cascades lands. Updates the
VM5 ledger row and outcome note in
docs/plans/2026-08-22-visualmaster-campaign.md.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-22 22:56:03 +02:00

389 lines
10 KiB
JSON

{
"note": "Campaign V slice V6c. Regenerate with tools/compile-shaders.ps1.",
"shaders": [
{
"name": "atmospheric_bloom_blur",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "81222e42a52d0b560f5916b0f312bcc5370e42e596c821477d71c61883c3d025",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "4b22872f61b462cdbc82d4af38c7693212bc7446c7c68faa32dd5585b08c43ae",
"compiled": true
}
]
},
{
"name": "atmospheric_bloom_downsample",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "81222e42a52d0b560f5916b0f312bcc5370e42e596c821477d71c61883c3d025",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "a01f09dfcc62acc5376f6e61be6aa2e8c5b0506550c0fa318f4434cbf3e6a17a",
"compiled": true
}
]
},
{
"name": "atmospheric_filmic",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "81222e42a52d0b560f5916b0f312bcc5370e42e596c821477d71c61883c3d025",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "240d2fe5e13e3850ceb79f178f1c248c71875fdc1973ff8cab1c274660ebbc4b",
"compiled": true
}
]
},
{
"name": "atmospheric_sun_occlusion",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "c21f381f2de05afc4415b2e348884a3cf6440da279b57d9a05a5d6ae5e9ac453",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "bfbc8c508b21dec84b21b2760877bfcb736c4f233e8557f6d1f8b83600683d5e",
"compiled": true
}
]
},
{
"name": "atmospheric_sun_rays",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "81222e42a52d0b560f5916b0f312bcc5370e42e596c821477d71c61883c3d025",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "13875d9f6fd28f1049d1f94741db13086f72cc7170659eb73c369b4c99b00a4f",
"compiled": true
}
]
},
{
"name": "atmospheric_volumetric",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "81222e42a52d0b560f5916b0f312bcc5370e42e596c821477d71c61883c3d025",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "0195fa5fdfb3850e090bed6f144981d454edfed526b79efe8dd5300b610b2f0f",
"compiled": true
}
]
},
{
"name": "debug_line",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "069ef7c89eea80c68e28f44b9e065c5cd3cc9220e8ba63261d345377025c2ea1",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "5db0714b88329f2465f4b8b949116e4295e37bf17360d81c108eacccb102a336",
"compiled": true
}
]
},
{
"name": "directional_shadow_terrain",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "e863894aa1d66508daad86806af2b2a3509088109754c491a3607477f78ed644",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "2b9ebbabc96c3ba53ce58cea175c52932c81d1d93820550f29a0734131dba5a3",
"compiled": true
}
]
},
{
"name": "directional_shadow_terrain_multiview",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "2f7d7bba3aa19a4891c30000e29c0bb84a2afdc26a44248d4c48bd0ffed8a04a",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "2b9ebbabc96c3ba53ce58cea175c52932c81d1d93820550f29a0734131dba5a3",
"compiled": true
}
]
},
{
"name": "directional_shadow_world_cutout",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "8331583c1d63ee59b3f7898e25b2e9730df98fd9da28273661caad948fb46ae5",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "cd9c404a9379715061358cb18a99b9310acbdd5062f0ad982ee9a37cd9f99922",
"compiled": true
}
]
},
{
"name": "directional_shadow_world_cutout_multiview",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "a4bb3b86283af310a22d3943dd1afadb8a72b42c9e5501efc9abf2b5124a1446",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "cd9c404a9379715061358cb18a99b9310acbdd5062f0ad982ee9a37cd9f99922",
"compiled": true
}
]
},
{
"name": "directional_shadow_world_opaque",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "c2586df5f09518c40d052bbacdfff2c00a82b1eefec4868749d0580571198067",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "2b9ebbabc96c3ba53ce58cea175c52932c81d1d93820550f29a0734131dba5a3",
"compiled": true
}
]
},
{
"name": "directional_shadow_world_opaque_multiview",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "35b4d524153623691ab523a049212aa35551f96c169c28c08f62d93e31d9e68d",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "2b9ebbabc96c3ba53ce58cea175c52932c81d1d93820550f29a0734131dba5a3",
"compiled": true
}
]
},
{
"name": "mesh_atmospheric",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "d4f8bc12ee84379ced84f5b703cf8be95798a23a7063773e214bc1eb6ebbb65e",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "62b001a72080ea74bdaef0fb2a4ed92533feaeab76187ce4215813c6327432e7",
"compiled": true
}
]
},
{
"name": "mesh_detail",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "3b03a153a439aa54fcd0bcb575274c8e1da888b8ae85ee15fae020ccb1d3bf49",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "e037fd28cf71453792c17522c97c4c7797193823ed78ca629a4331b632f177b1",
"compiled": true
}
]
},
{
"name": "mesh_modern",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "2c37aa0fd1ee4af5ee1f6541b00e6a7226d4173988e748b1fb1c271b0a9b91b2",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "12f2ceec9a8420bd273650e95251ca56c3bf3c3691fce1a539e4c5aea7abaabf",
"compiled": true
}
]
},
{
"name": "particle",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "921c32617708b3931a6304b4697ee96d728077d96f489d6c09eea4c5fe225b63",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "6f2a5769670087bf58b0c1a7a007c1853952354dfd9106973656311bcbb855cd",
"compiled": true
}
]
},
{
"name": "particle_mesh",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "19db8757c1a61a2fbec8e56ce89d56b6dd6d66a123cedcdae40915af07d58c0e",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "73c8db72aeb44e88054dd79fd722c7f683b27a8bc03368b5201f05adffd92728",
"compiled": true
}
]
},
{
"name": "portal_depth",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "6214fc04936d92320594acb722e63f1cd1f7106dd4d0af60ed985abc2a50c4a9",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "711ba97649f27f890f0cad5f355552fd8f707cbe801af4ac14afbee1b8f800c9",
"compiled": true
}
]
},
{
"name": "sky",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "a89580f54c8d36b33d50b84b9fb61024861c737bb0b5bd7a4df0704bf010c3c3",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "2ddf210d69b0c4a3c0870eecfb0ccba2097d93b365729739402bfe91e3b120d0",
"compiled": true
}
]
},
{
"name": "terrain_atmospheric",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "06258c7ead0e123740e325c802156987ed17dabe355d591d0e90facb420b8e04",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "9927abe9cc4fb83429d3e2ec8ee8d13f0b1936cebf484a4e529dcfdab431c3b8",
"compiled": true
}
]
},
{
"name": "terrain_modern",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "a3f8592d482793622f7a69c08f8ba828a4e071f2fb5e1763f865be84797bceb7",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "a9f0ad2e679b68ee2de6c4877202f6f5e5089d0f7368fcedd6048891c6848915",
"compiled": true
}
]
},
{
"name": "ui_text",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "4ddc52f18ea953b33e9263dc2703397f63f4b104bc45d67edc06531145bd9d53",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "43cb53aa8c933f7800142b72ea81bafc923fd7039fd460022d55543081d0aee5",
"compiled": true
}
]
},
{
"name": "vk_probe",
"vulkanReady": true,
"stages": [
{
"stage": "vert",
"sourceSha256": "1f3f73aa4e9448c36f3b577e63b2142815736a4195bbc4395e1d674a9be92f43",
"compiled": true
},
{
"stage": "frag",
"sourceSha256": "8093adcacb925258ea79371a3ac3415de4f270f95eb12a621c759912992a5614",
"compiled": true
}
]
}
]
}