shaderlib: Add rotateUV function to common.gdshader

This commit is contained in:
ChaoticByte 2025-04-09 19:00:02 +02:00
parent 4d0f7ca538
commit c9c5428dbc
No known key found for this signature in database

View file

@ -13,3 +13,15 @@ vec4 alpha_blend(vec4 b, vec4 a) {
vec3 col = ((a.rgb*a.a) + ((b.rgb*b.a) * (1.0 - a.a)) / alpha);
return vec4(col.r, col.g, col.b, alpha);
}
/*
Rotate UV
*/
vec2 rotateUV(vec2 uv, float rotation, vec2 center) {
float cosRot = cos(rotation);
float sinRot = sin(rotation);
return vec2(
cosRot * (uv.x - center.x) + sinRot * (uv.y - center.y) + center.x,
cosRot * (uv.y - center.y) - sinRot * (uv.x - center.x) + center.y);
}