|
Implements ray-triangle intersection algorithm for future mesh raytracing support.
Changes:
- Add ray_triangle.wgsl with TriangleHit struct and intersection function
- Register shader snippet in asset system (SHADER_RAY_TRIANGLE)
- Add shader composer registration for #include "ray_triangle" support
Returns:
- hit.uv: Barycentric coordinates (for texture mapping)
- hit.z: Parametric distance along ray
- hit.N: Triangle face normal
- hit.hit: Boolean indicating intersection
Task: Progress on SDF for mesh (related to Task #18)
Algorithm: Fast, Minimum Storage Ray-Triangle Intersection (Möller-Trumbore)
Size: ~30 lines WGSL, negligible binary impact
|