mirror of
https://github.com/mkxp-z/mkxp-z.git
synced 2025-04-22 06:02:04 +02:00
35 lines
866 B
GLSL
35 lines
866 B
GLSL
|
|
uniform mat4 projMat;
|
|
|
|
uniform mat4 spriteMat;
|
|
|
|
uniform vec2 texSizeInv;
|
|
uniform vec2 patternSizeInv;
|
|
uniform vec2 patternScroll;
|
|
uniform vec2 patternZoom;
|
|
uniform bool renderPattern;
|
|
uniform bool patternTile;
|
|
|
|
attribute vec2 position;
|
|
attribute vec2 texCoord;
|
|
|
|
varying vec2 v_texCoord;
|
|
varying vec2 v_patCoord;
|
|
|
|
void main()
|
|
{
|
|
gl_Position = projMat * spriteMat * vec4(position, 0, 1);
|
|
|
|
v_texCoord = texCoord * texSizeInv;
|
|
|
|
if (renderPattern) {
|
|
if (patternTile) {
|
|
vec2 scroll = patternScroll * (patternSizeInv / texSizeInv);
|
|
v_patCoord = (texCoord * (patternSizeInv / patternZoom)) - (scroll * patternSizeInv);
|
|
}
|
|
else {
|
|
vec2 scroll = patternScroll * (patternSizeInv / texSizeInv);
|
|
v_patCoord = (texCoord * (texSizeInv / patternZoom)) - (scroll * texSizeInv);
|
|
}
|
|
}
|
|
}
|