Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //*****************************************************************************
- // Torque -- GLSL procedural shader
- //*****************************************************************************
- #include "shaders/common/gl/hlslCompat.glsl"
- // Dependencies:
- #include "shaders/common/gl/imposter.glsl"
- #include "shaders/common/gl/lighting.glsl"
- //------------------------------------------------------------------------------
- // Autogenerated 'Light Buffer Conditioner [RGB]' Uncondition Method
- //------------------------------------------------------------------------------
- void autogenUncondition_bde4cbab(in vec4 bufferSample, out vec3 lightColor, out float NL_att, out float specular)
- {
- lightColor = bufferSample.rgb;
- NL_att = dot(bufferSample.rgb, float3(0.3576, 0.7152, 0.1192));
- specular = bufferSample.a;
- }
- #include "shaders/common/gl/torque.glsl"
- // Features:
- // Imposter Vert
- // Vert Position
- // Base Texture
- // Alpha Test
- // Bumpmap [Deferred]
- // Deferred RT Lighting
- // Visibility
- // HDR Output
- // DXTnm
- in float _TEXCOORD0_;
- in vec2 _TEXCOORD1_;
- in vec4 _TEXCOORD2_;
- in vec4 _TEXCOORD3_;
- // Struct defines
- //Fragment shader OUT
- out vec4 OUT_col;
- //-----------------------------------------------------------------------------
- // Main
- //-----------------------------------------------------------------------------
- uniform float visibility ;
- uniform sampler2D diffuseMap ;
- uniform float alphaTestValue ;
- uniform vec4 rtParamslightInfoBuffer;
- uniform sampler2D lightInfoBuffer;
- void main()
- {
- float visibility = visibility;
- float alphaTestValue = alphaTestValue;
- vec4 rtParamslightInfoBuffer = rtParamslightInfoBuffer;
- //-------------------------
- float IN_imposterFade = _TEXCOORD0_;
- vec2 IN_texCoord = _TEXCOORD1_;
- vec4 IN_screenspacePos = _TEXCOORD2_;
- vec4 IN_inVpos = _TEXCOORD3_;
- //-------------------------
- // Imposter Vert
- visibility *= IN_imposterFade;
- // Vert Position
- // Base Texture
- OUT_col = tex2D(diffuseMap, IN_texCoord);
- // Alpha Test
- clip( OUT_col.a - alphaTestValue );
- // Bumpmap [Deferred]
- // Deferred RT Lighting
- vec2 uvScene = IN_screenspacePos.xy / IN_screenspacePos.w;
- uvScene = ( uvScene + 1.0 ) / 2.0;
- uvScene.y = 1.0 - uvScene.y;
- uvScene = ( uvScene * rtParamslightInfoBuffer.zw ) + rtParamslightInfoBuffer.xy;
- vec3 d_lightcolor;
- float d_NL_Att;
- float d_specular;
- lightinfoUncondition(tex2D(lightInfoBuffer, uvScene), d_lightcolor, d_NL_Att, d_specular);
- OUT_col *= float4(d_lightcolor, 1.0);
- // Visibility
- vec2 vpos = IN_inVpos.xy / IN_inVpos.w;
- fizzle( vpos, visibility );
- // HDR Output
- OUT_col = hdrEncode( OUT_col );
- // DXTnm
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement