Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/assets/opensb/rendering/effects/interface.vert
diff options
context:
space:
mode:
Diffstat (limited to 'assets/opensb/rendering/effects/interface.vert')
-rw-r--r--assets/opensb/rendering/effects/interface.vert13
1 files changed, 9 insertions, 4 deletions
diff --git a/assets/opensb/rendering/effects/interface.vert b/assets/opensb/rendering/effects/interface.vert
index 14a7cea..dfd94d4 100644
--- a/assets/opensb/rendering/effects/interface.vert
+++ b/assets/opensb/rendering/effects/interface.vert
@@ -6,6 +6,7 @@ uniform vec2 textureSize2;
uniform vec2 textureSize3;
uniform vec2 screenSize;
uniform mat3 vertexTransform;
+uniform bool vertexRounding;
in vec2 vertexPosition;
in vec4 vertexColor;
@@ -19,10 +20,14 @@ out vec4 fragmentColor;
void main() {
vec2 screenPosition = (vertexTransform * vec3(vertexPosition, 1.0)).xy;
gl_Position = vec4(screenPosition / screenSize * 2.0 - 1.0, 0.0, 1.0);
- if (((vertexData >> 3) & 0x1) == 1)
- screenPosition.x = round(screenPosition.x);
- if (((vertexData >> 4) & 0x1) == 1)
- screenPosition.y = round(screenPosition.y);
+
+ if (vertexRounding) {
+ if (((vertexData >> 3) & 0x1) == 1)
+ screenPosition.x = round(screenPosition.x);
+ if (((vertexData >> 4) & 0x1) == 1)
+ screenPosition.y = round(screenPosition.y);
+ }
+
int vertexTextureIndex = vertexData & 0x3;
if (vertexTextureIndex == 3)
fragmentTextureCoordinate = vertexTextureCoordinate / textureSize3;