import { FragmentShader, VertexShader } from '../../../Shader'; export declare const gBufferVertex: VertexShader, { worldViewProjection: { type: "mat4"; semantic: "WORLDVIEWPROJECTION"; }; worldInverseTranspose: { type: "mat4"; semantic: "WORLDINVERSETRANSPOSE"; }; world: { type: "mat4"; semantic: "WORLD"; }; prevWorldViewProjection: { type: "mat4"; value: import("../../../glmatrix/common").Mat4Array; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; prevSkinMatricesTexture: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; prevSkinMatrix: { type: "mat4"; value: ArrayLike | undefined; len: string | number; array: true; }; uvRepeat: { type: "vec2"; value: import("../../../glmatrix/common").Vec2Array; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; uvOffset: { type: "vec2"; value: import("../../../glmatrix/common").Vec2Array; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; useVertexColor: { type: "bool"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; }, { position: { type: "vec3"; semantic: "POSITION" | undefined; }; texcoord: { type: "vec2"; semantic: "TEXCOORD_0" | undefined; }; normal: { type: "vec3"; semantic: "NORMAL" | undefined; }; a_Color: { type: "vec4"; semantic: "COLOR" | undefined; }; tangent: { type: "vec4"; semantic: "TANGENT" | undefined; }; }, { v_Texcoord: { type: "vec2"; }; v_Normal: { type: "vec3"; }; v_Color: { type: "vec4"; }; v_Tangent: { type: "vec3"; }; v_Bitangent: { type: "vec3"; }; v_LocalNormal: { type: "vec3"; }; v_LocalPosition: { type: "vec3"; }; v_WorldPosition: { type: "vec3"; }; v_ViewPosition: { type: "vec4"; }; v_PrevViewPosition: { type: "vec4"; }; }, { defines: {}; uniforms: { skinMatrix: { type: "mat4"; value: ArrayLike | undefined; len: string | number; array: true; }; }; attributes: { weight: { type: "vec3"; semantic: "WEIGHT" | undefined; }; joint: { type: "vec4"; semantic: "JOINT" | undefined; }; }; varyings: {}; functions: ((functionName?: string) => string)[]; main: string; }[]>; /** * First texture * - R: normal.x * - G: normal.y * - B: normal.z * - A: metalness * * Second texture * - R: albedo.r * - G: albedo.g * - B: albedo.b * - A: metalness * * Third texture * - R: velocity.x * - G: velocity.y * - A: alpha */ export declare const createGBufferFrag: (outputs: string[]) => FragmentShader<{ PI: number; }, { viewInverse: { type: "mat4"; semantic: "VIEWINVERSE"; }; glossiness: { type: "float"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; diffuseMap: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; metalnessMap: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; color: { type: "vec3"; value: import("../../../glmatrix/common").Vec3Array; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; metalness: { type: "float"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; useMetalnessMap: { type: "bool"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; linear: { type: "bool"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; normalMap: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; normalScale: { type: "float"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; roughGlossMap: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; useRoughGlossMap: { type: "bool"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; useRoughness: { type: "bool"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; emission: { type: "vec3"; value: import("../../../glmatrix/common").Vec3Array; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; emissionIntensity: { type: "float"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; emissiveMap: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; doubleSided: { type: "bool"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; alphaCutoff: { type: "float"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; alpha: { type: "float"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; roughGlossChannel: { type: "int"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; firstRender: { type: "bool"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; uvProjection: { type: "int"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; uvRepeat: { type: "vec2"; value: import("../../../glmatrix/common").Vec2Array; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; }, { defines: {}; uniforms: {}; attributes: {}; varyings: {}; functions: ((functionName?: string) => string)[]; main: string; }[]>; export declare const gBufferDebugFragment: FragmentShader, { /** * DEBUG * - 0: normal * - 1: depth * - 2: position * - 3: glossiness * - 4: metalness * - 5: albedo * - 6: emission * - 7: velocity */ debug: { type: "int"; value: number; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; gBufferTexture4: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; gBufferTexture5: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; }, { defines: {}; uniforms: { gBufferTexture1: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; gBufferTexture2: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; gBufferTexture3: { type: "sampler2D"; value: import("../../../Texture2D").default; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; windowSize: { type: "vec2"; semantic: "WINDOW_SIZE"; }; viewport: { type: "vec4"; semantic: "VIEWPORT"; }; viewProjectionInv: { type: "mat4"; value: import("../../../glmatrix/common").Mat4Array; semantic: import("../../../Shader").UniformSemantic | import("../../../Shader").MatrixSemantic | undefined; }; }; attributes: {}; varyings: {}; functions: ((functionName?: string) => string)[]; main: string; }[]>;