playcanvas
Version:
PlayCanvas WebGL game engine
22 lines (20 loc) • 581 B
JavaScript
var linearizeDepthPS = `
fn linearizeDepthWithParams(z: f32, cameraParams: vec4f) -> f32 {
if (cameraParams.w == 0.0) {
return (cameraParams.z * cameraParams.y) / (cameraParams.y + z * (cameraParams.z - cameraParams.y));
} else {
return cameraParams.z + z * (cameraParams.y - cameraParams.z);
}
}
uniform camera_params: vec4f;
fn linearizeDepth(z: f32) -> f32 {
return linearizeDepthWithParams(z, uniform.camera_params);
}
`;
export { linearizeDepthPS as default };