playcanvas
Version:
PlayCanvas WebGL game engine
198 lines (163 loc) • 5.69 kB
JavaScript
// Declaration part of the standard shader. Declares the uniforms, textures and global variables used
// by the fragment shader of the standard shader.
var stdDeclarationPS = /* glsl */ `
// globals
float dAlpha = 1.0;
// all passes handle opacity
uniform sampler2D texture_opacityMap;
// globals
vec3 dAlbedo;
vec3 dNormalW;
vec3 dSpecularity = vec3(0.0);
float dGlossiness = 0.0;
float dTransmission;
float dThickness;
uniform sampler2D uSceneColorMap;
uniform vec4 uScreenSize;
uniform mat4 matrix_viewProjection;
uniform mat4 matrix_model;
// parallax
vec2 dUvOffset;
uniform sampler2D texture_heightMap;
// diffuse
uniform sampler2D texture_diffuseMap;
uniform sampler2D texture_diffuseDetailMap;
// normal
uniform sampler2D texture_normalMap;
uniform sampler2D texture_normalDetailMap;
// refraction
uniform sampler2D texture_thicknessMap;
uniform sampler2D texture_refractionMap;
// iridescence
float dIridescence;
float dIridescenceThickness;
uniform sampler2D texture_iridescenceThicknessMap;
uniform sampler2D texture_iridescenceMap;
float ccSpecularity;
float ccGlossiness;
vec3 ccNormalW;
float dAnisotropy;
vec2 dAnisotropyRotation;
// specularity & glossiness
// sheen
vec3 sSpecularity;
float sGlossiness;
uniform sampler2D texture_sheenMap;
uniform sampler2D texture_sheenGlossMap;
// metalness
float dMetalness;
float dIor;
uniform sampler2D texture_metalnessMap;
// specularity factor
float dSpecularityFactor;
uniform sampler2D texture_specularityFactorMap;
// specular color
uniform sampler2D texture_specularMap;
// gloss
uniform sampler2D texture_glossMap;
// ao
float dAo;
uniform sampler2D texture_aoMap;
uniform sampler2D texture_aoDetailMap;
// emission
vec3 dEmission;
uniform sampler2D texture_emissiveMap;
// clearcoat
uniform sampler2D texture_clearCoatMap;
uniform sampler2D texture_clearCoatGlossMap;
uniform sampler2D texture_clearCoatNormalMap;
// anisotropy
uniform sampler2D texture_anisotropyMap;
// lightmap
vec3 dLightmap;
uniform sampler2D texture_lightMap;
// front end outputs to lit shader
`;
export { stdDeclarationPS as default };