- Use BeginShaderMode/EndShaderMode around DrawModelEx to keep shader active - Bind shadow map on texture unit 1 BEFORE DrawModelEx (not after) - Remove manual Matrix4x4.Transpose — SetShaderValueMatrix already handles row-major to column-major conversion via glUniformMatrix4fv(transpose=false) - 66/66 tests, 145 FPS