OpenGL Camera продолжает вращаться вокруг источника - PullRequest
0 голосов
/ 23 октября 2018

В этом коде нет ошибок, но когда я запускаю код, камера в порядке, я могу осмотреться и все такое.Как только я двигаюсь, он начинает вращаться вокруг источника своего появления.

Код камеры: http://hatebin.com/iiceqotcpu

Основной код mouse_callback

def mouse_callback(window, xpos, ypos):
    global first_mouse,lastX, lastY
    if first_mouse:
        lastX = xpos
        lastY = ypos
        first_mouse = False

    xoffset = xpos - lastX
    yoffset = lastY - ypos

    lastX = xpos
    lastY = ypos

    cam.process_mouse_movement(xoffset, yoffset)

1 Ответ

0 голосов
/ 23 октября 2018

Поступательная часть матрицы вида должна идти перед вращательной частью, так как вы должны применить вращение к относительному положению точки.

# before
return translation * rotation

# after
return rotation * translation
...