playcanvas
Version:
Open-source WebGL/WebGPU 3D engine for the web
3 lines (2 loc) • 807 B
TypeScript
declare const _default: "\n\n#if LIT_CUBEMAP_PROJECTION == BOX\n uniform vec3 envBoxMin;\n uniform vec3 envBoxMax;\n#endif\n\nvec3 cubeMapProject(vec3 nrdir) {\n\n #if LIT_CUBEMAP_PROJECTION == NONE\n return cubeMapRotate(nrdir);\n #endif\n\n #if LIT_CUBEMAP_PROJECTION == BOX\n\n nrdir = cubeMapRotate(nrdir);\n\n vec3 rbmax = (envBoxMax - vPositionW) / nrdir;\n vec3 rbmin = (envBoxMin - vPositionW) / nrdir;\n\n vec3 rbminmax = mix(rbmin, rbmax, vec3(greaterThan(nrdir, vec3(0.0))));\n float fa = min(min(rbminmax.x, rbminmax.y), rbminmax.z);\n\n vec3 posonbox = vPositionW + nrdir * fa;\n vec3 envBoxPos = (envBoxMin + envBoxMax) * 0.5;\n return normalize(posonbox - envBoxPos);\n\n #endif\n}\n";
export default _default;