git-svn-id: svn://db.shs.com.ru/libs@642 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2019-12-03 14:24:40 +00:00
parent c38678056d
commit b1e1ad4aea
8 changed files with 54 additions and 43 deletions

View File

@@ -26,6 +26,7 @@ uniform vec2 dt;
uniform float z_near;
const vec3 luma = vec3(0.299, 0.587, 0.114);
const float _pe = 2.4e-7;
void main(void) {
vec2 tc = qgl_FragTexture.xy;
@@ -51,11 +52,15 @@ void main(void) {
emission *= qgl_material[qgl_MaterialIndex].color_emission;
float height = dot(qgl_materialTexture(QGL_MAP_RELIEF, tc, vec4(0)).rgb, luma);
float z = gl_FragCoord.z;
z = z + z - 1;
z = ((_pe - 2.) * z_near) / (z + _pe - 1.); // infinite depth
qgl_FragData[0] = vec4(diffuse .rgb, reflectivity);
qgl_FragData[1] = vec4(normal .xyz, roughness );
qgl_FragData[1] = vec4(normal .xyz, z);
qgl_FragData[2] = vec4(specular.rgb, height );
qgl_FragData[3] = vec4(emission.rgb, 0/*bn.x*/);
qgl_FragData[3] = vec4(emission.rgb, roughness/*bn.x*/);
//qgl_FragData[4] = vec4(speed.xy, bn.yz);
//ivec2 itc = ivec2(gl_FragCoord.xy);