我在互联网上搜索了教程,实施和帮助。什么都没有。
我唯一能找到的是广告牌着色器实现,它将mat4的左上角3x3矩阵设置为identity。这确实会丢弃旋转,但也有效地缩放。
有没有办法进行不丢弃(非均匀)缩放的广告牌?
注意:我不是在寻找任何人为我做编程。只是我不能围绕具体细节。任何指向正确的方向都是受欢迎的。
答案 0 :(得分:11)
左上角3x3矩阵包含旋转,但也包含刻度。正如你所看到的那样,将3x3的上部核武器核对。您需要先从3x3中提取比例来保留比例。 3x3的每一列(作为矢量)通过获取每个列向量的大小来告诉您每个方向的比例。
如果您的4x4矩阵
RSX RSY RSZ T
0 0 0 1
那么比例因子是
xScale = ||RSX||
yScale = ||RSY||
zScale = ||RSZ||
保存它们,然后形成一个新的4x4矩阵,完成您已经在做的事情,同时也包含了规模。
xScale 0 0 xT
0 yScale 0 yT
0 0 zScale zT
0 0 0 1