]> 0331174fvEyePosition1100-104161620013453133117400133117400200061122073917910312502508180250250Workspace1000-107074001250250001250169121120250250Output1002-10110110250250Artist Editor1001-10100103001514031430361233117411611331174000331174fvLightPosition1101-103202030019262000331233117412011331174002920 ]]> 0.0){ Shadow = 0.0; Shadow += TraceShadow(0.2,0.8,NewCoord+vec3(-0.01,-0.01,0.0),fvLightDirection,mipmap); //Shadow += TraceShadow(0.2,0.8,NewCoord+vec3(-0.01,0.01,0.0),fvLightDirection,mipmap); //Shadow += TraceShadow(0.2,0.8,NewCoord+vec3(0.01,-0.01,0.0),fvLightDirection,mipmap); //Shadow += TraceShadow(0.2,0.8,NewCoord+vec3(0.01,0.01,0.0),fvLightDirection,mipmap); //Shadow *= 0.25; }*/ vec3 fvReflection = normalize( ( ( 2.0 * fvNormal ) * fNDotL ) - fvLightDirection ); float fRDotV = max( 0.0, dot( fvReflection, fvViewDirection ) ); vec4 fvBaseColor = texture2DLod( baseMap, NewCoord.xy,mipmap); vec4 fvTotalAmbient = fvAmbient * fvBaseColor; vec4 fvTotalDiffuse = fvDiffuse * fNDotL * fvBaseColor; vec4 fvTotalSpecular = fvSpecular * ( pow( fRDotV, fSpecularPower ) ); gl_FragColor = ( fvTotalAmbient + (fvTotalDiffuse + fvTotalSpecular) * Shadow ); }]]>