UNPKG

@babylonjs/viewer

Version:

The Babylon Viewer aims to simplify a specific but common Babylon.js use case: loading, viewing, and interacting with a 3D model.

20 lines (17 loc) 1.16 kB
import { S as ShaderStore } from './index-MZPybX0H.esm.js'; // Do not edit. const name = "iblVoxelGridPixelShader"; const shader = `var voxel_storage: texture_storage_3d<r8unorm,write>;varying vNormalizedPosition: vec3f;flat varying f_swizzle: i32;@fragment fn main(input: FragmentInputs)->FragmentOutputs {var size: vec3f=vec3f(textureDimensions(voxel_storage));var normPos: vec3f=input.vNormalizedPosition.xyz;var outputColor: vec4f=vec4f(0.0,0.0,0.0,1.0);switch (input.f_swizzle) {case 0: {normPos=normPos.zxy; outputColor=vec4f(1.0,1.0,0.0,1.0);break;} case 1: {normPos=normPos.yzx;outputColor=vec4f(1.0,1.0,1.0,1.0);break;} default: {normPos=normPos.xyz;outputColor=vec4f(1.0,1.0,0.0,1.0);break;}} textureStore(voxel_storage,vec3<i32>(i32(normPos.x*size.x),i32(normPos.y*size.y),i32(normPos.z*size.z)),outputColor);fragmentOutputs.color=vec4<f32>(vec3<f32>(normPos),1.);}`; // Sideeffect if (!ShaderStore.ShadersStoreWGSL[name]) { ShaderStore.ShadersStoreWGSL[name] = shader; } /** @internal */ const iblVoxelGridPixelShaderWGSL = { name, shader }; export { iblVoxelGridPixelShaderWGSL }; //# sourceMappingURL=iblVoxelGrid.fragment-CgH9RRO7.esm.js.map