我正在使用OpenGL在場景中繪製一個對象,但似乎無法讓它圍繞相機旋轉,而不是隻是在原地旋轉。旋轉相機周圍的物體並獲取變換後的座標?
我能做些什麼來讓它圍繞相機旋轉?我知道我可以在相機/視圖空間中繪製它,但是我需要從變形後獲取對象的位置和旋轉(以便我可以使用Bullet爲該對象提供剛體)。如果仍然可以從視圖空間中呈現的對象中檢索位置和旋轉,請忽略該帖子的第一部分。
換句話說,我怎麼可以移動和相機旋轉對象並獲取它從ModelMatrix
所以座標和旋轉,我可以填補這些:
glm::vec3 objectPosition;
glm::quat objectRotation;
我見過類似的帖子網上說使用舊的OpenGL /而不是MVP框架,所以我不知道如何做到這一點。乾杯。
您需要翻譯到_negative_相機位置,旋轉並翻譯回去。否則,將對象移動到原點,然後旋轉它只會圍繞它自己的軸。嘗試評論你的第一行。 – Psi
我似乎沒有任何運氣。我試着先用-getPosition()進行翻譯,然後旋轉,然後翻譯成getPosition()(如果這就是你的意思)但沒有運氣。 –