playcanvas
Version:
Open-source WebGL/WebGPU 3D engine for the web
23 lines (22 loc) • 672 B
JavaScript
var shared_wgsl_default = `
#define WEBGPU
fn getGrabScreenPos(clipPos: vec4<f32>) -> vec2<f32> {
var uv: vec2<f32> = (clipPos.xy / clipPos.w) * 0.5 + vec2<f32>(0.5);
uv.y = 1.0 - uv.y;
return uv;
}
fn getImageEffectUV(uv: vec2<f32>) -> vec2<f32> {
var modifiedUV: vec2<f32> = uv;
modifiedUV.y = 1.0 - modifiedUV.y;
return modifiedUV;
}
struct WrappedF32 { @size(16) element: f32 }
struct WrappedI32 { @size(16) element: i32 }
struct WrappedU32 { @size(16) element: u32 }
struct WrappedVec2F { @size(16) element: vec2f }
struct WrappedVec2I { @size(16) element: vec2i }
struct WrappedVec2U { @size(16) element: vec2u }
`;
export {
shared_wgsl_default as default
};