playcanvas
Version:
PlayCanvas WebGL game engine
53 lines (51 loc) • 1.06 kB
JavaScript
var gsplatCommonVS = `
struct SplatSource {
order: u32,
id: u32,
uv: vec2<i32>,
cornerUV: vec2f,
}
struct SplatCenter {
view: vec3f,
proj: vec4f,
modelView: mat4x4f,
projMat00: f32,
}
struct SplatCorner {
offset: vec2f,
uv: vec2f,
aaFactor: f32,
}
fn clipCorner(corner: ptr<function, SplatCorner>, alpha: f32) {
let clip: f32 = min(1.0, sqrt(-log(1.0 / (255.0 * alpha))) / 2.0);
corner.offset = corner.offset * clip;
corner.uv = corner.uv * clip;
}
`;
export { gsplatCommonVS as default };