Eu tenho trabalhado recentemente em um jogo usando OpenGL e C ++ através do GLFW.
No jogo, tenho uma aeronave com uma torre montada nela. A aeronave se move em coordenadas espaciais mundiais e a torre a segue.
A torre possui seu próprio espaço de coordenadas para a direção da aparência / objetivo. Basicamente, quando a torre aponta na direção (0,0,1), ela é paralela à direção do movimento das aeronaves.
Para dar à torre um alvo espacial mundial, eu tenho uma matriz que pega as coordenadas espaciais mundiais e as transforma em coordenadas espaciais da torre.
À medida que a torre dispara, quero que ela projete projéteis no espaço mundial, existe uma maneira elegante de usar minha matriz de transformação para converter as coordenadas do espaço da torre de volta ao espaço mundial?
Uma maneira mais geral de fazer a pergunta pode ser: se eu tiver uma matriz Mque leve coordenadas de um espaço Apara o outro B. Existe uma maneira fácil de usar Mpara obter as coordenadas de Bpara A?