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