Ask what the light can see
For one directional light, render the room’s occluders into a depth texture from the light’s view using a supported orthographic volume. The camera pass transforms a surface into that same light clip space, performs the appropriate divide and range mapping, and compares its depth with the stored value.
Define behavior outside the light volume and make the shadow texture’s sampling/comparison policy explicit. A small bias can reduce self-shadow artifacts, but excessive bias detaches shadows. Resolution and the chosen light volume determine useful detail; a larger texture alone does not repair a bad projection.
Begin with one box casting onto the floor. Inspect the depth map and transformed light coordinates separately. The first capstone shadow map is a learner implementation, not a feature supplied by the triangle starter, and it is not a complete robust shadow system for arbitrary scenes.
Add one directional shadow pass. Save the depth-debug view and the camera result. Explain the light volume, bias, and outside-volume policy.
