There exist a wrong matrix multiply to get viewport space position. --------------------------------------------------------------------------------- vec4 toViewportSpace(vec2 pos) { return vec4(pos, 0., 1.) * u_modelViewMatrix; } --------------------------------------------------------------------------------- It generates wrong position and affects the inflation ratio to each vertices. The transformation matrix should be left side. After fix the multiplication, I got little strange result. Anti-aliased layer's (inner) contents are expanded 1px. But it shouldn't happen and only edge should be inflated. Than I just erase the clamp function to create transformedTexCoord, and finally, got the good result. But in theory clamping the position should be there, because we using GL_REPEAT in many case. Please give me some idea or comment.
Created attachment 242024 [details] Patch
Created attachment 242025 [details] Patch
Created attachment 242026 [details] after fix
Created attachment 242027 [details] before fix
TEST URL : https://bug-124653-attachments.webkit.org/attachment.cgi?id=217424
Comment on attachment 242025 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=242025&action=review > Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp:-177 > - vec4 clampedPosition = clamp(vec4(position, 0., 1.), 0., 1.); I'm not sure eliminating the clamp function. But with clamp, it shows expanded output.
anybody?