OpenGL ES 2.0 - 绕枢轴点旋转点 2D (顶点着色器)

问题描述 投票:0回答:1

我想在2D中围绕某个点旋转顶点。我在这里找到了 @Rabbid76 的解决方案。https:/stackoverflow.coma48156351776388。 但我需要围绕z-矢量旋转。

matrix opengl-es opengl-es-2.0 vertex-shader
1个回答
1
投票

我找到了一个解决方案

vec2 rotate(vec2 point, float degree, vec2 pivot)
{
    float radAngle = -radians(degree);// "-" - clockwise
    float x = point.x;
    float y = point.y;

    float rX = pivot.x + (x - pivot.x) * cos(radAngle) - (y - pivot.y) * sin(radAngle);
    float rY = pivot.y + (x - pivot.x) * sin(radAngle) + (y - pivot.y) * cos(radAngle);

    return vec2(rX, rY);
}
© www.soinside.com 2019 - 2024. All rights reserved.