Index: ps/trunk/binaries/data/mods/public/shaders/arb/overlayline.vp =================================================================== --- ps/trunk/binaries/data/mods/public/shaders/arb/overlayline.vp (revision 24139) +++ ps/trunk/binaries/data/mods/public/shaders/arb/overlayline.vp (revision 24140) @@ -1,15 +1,19 @@ !!ARBvp1.0 +#if !IGNORE_LOS PARAM losTransform = program.local[0]; +#endif ATTRIB position = vertex.position; DP4 result.position.x, state.matrix.mvp.row[0], position; DP4 result.position.y, state.matrix.mvp.row[1], position; DP4 result.position.z, state.matrix.mvp.row[2], position; DP4 result.position.w, state.matrix.mvp.row[3], position; MOV result.texcoord[0], vertex.texcoord[0]; +#if !IGNORE_LOS MAD result.texcoord[1], position.xzzz, losTransform.x, losTransform.y; +#endif MOV result.color, vertex.color; END Index: ps/trunk/binaries/data/mods/public/shaders/arb/overlayline.xml =================================================================== --- ps/trunk/binaries/data/mods/public/shaders/arb/overlayline.xml (revision 24139) +++ ps/trunk/binaries/data/mods/public/shaders/arb/overlayline.xml (revision 24140) @@ -1,24 +1,24 @@ - + - + Index: ps/trunk/binaries/data/mods/public/shaders/glsl/overlayline.fs =================================================================== --- ps/trunk/binaries/data/mods/public/shaders/glsl/overlayline.fs (revision 24139) +++ ps/trunk/binaries/data/mods/public/shaders/glsl/overlayline.fs (revision 24140) @@ -1,37 +1,40 @@ #version 120 uniform sampler2D baseTex; uniform sampler2D maskTex; uniform sampler2D losTex; #if USE_OBJECTCOLOR uniform vec4 objectColor; #else varying vec4 v_color; #endif varying vec2 v_tex; + +#if !IGNORE_LOS varying vec2 v_los; +#endif void main() { #if USE_OBJECTCOLOR vec3 color = objectColor.rgb; float alpha = objectColor.a; #else vec3 color = v_color.rgb; float alpha = v_color.a; #endif vec4 base = texture2D(baseTex, v_tex); vec4 mask = texture2D(maskTex, v_tex); color = mix(base.rgb, color, mask.r); #if !IGNORE_LOS float los = texture2D(losTex, v_los).a; los = los < 0.03 ? 0.0 : los; color *= los; #endif gl_FragColor = vec4(color, alpha * base.a); } Index: ps/trunk/binaries/data/mods/public/shaders/glsl/overlayline.vs =================================================================== --- ps/trunk/binaries/data/mods/public/shaders/glsl/overlayline.vs (revision 24139) +++ ps/trunk/binaries/data/mods/public/shaders/glsl/overlayline.vs (revision 24140) @@ -1,24 +1,31 @@ #version 120 +#if !IGNORE_LOS uniform vec2 losTransform; +#endif attribute vec3 a_vertex; attribute vec2 a_uv0; #if !USE_OBJECTCOLOR attribute vec4 a_color; varying vec4 v_color; #endif varying vec2 v_tex; + +#if !IGNORE_LOS varying vec2 v_los; +#endif void main() { v_tex = a_uv0; +#if !IGNORE_LOS v_los = a_vertex.xz * losTransform.x + losTransform.yy; +#endif #if !USE_OBJECTCOLOR v_color = a_color; #endif gl_Position = gl_ModelViewProjectionMatrix * vec4(a_vertex, 1.0); }