0
我目前正在爲遊戲引擎創建一個廣告牌着色器,並且我想在此着色器中重置四元組的旋轉角度。我在編程GLSL着色器,這裏是頂點着色器:如何修改旋轉矩陣的一個軸?
#version 400 core
layout (location = 0) in vec3 in_position;
layout (location = 1) in vec2 in_texcoords;
out data
{
vec2 tex_coords;
} vs_out;
uniform mat4 pr_matrix;
uniform mat4 ml_matrix = mat4(1.0);
uniform mat4 vw_matrix = mat4(1.0);
void main()
{
gl_Position = pr_matrix * vw_matrix * ml_matrix * vec4(in_position, 1.0);
vs_out.tex_coords = in_texcoords;
}
我知道,我可以通過設置在左上方重置模型矩陣的旋轉
1 0 0
0 1 0
0 0 1
,但現在我希望四邊形能夠圍繞x軸和z軸旋轉,但不能圍繞Y軸旋轉。有人知道如何在一個軸上重置矩陣的旋轉嗎?
謝謝您的回答,但你知道如何繞Y軸的歐拉角爲0?因爲多數民衆贊成我正在尋找:/ – RagingRabbit
@RagingRabbit:你可以乘以y軸的倒數只,以撤消該特定的旋轉? – namar0x0309
不,我只有轉換矩陣,所以在所有軸上旋轉。 – RagingRabbit