介绍
你好,我是一名大学生,主要自学UnrealEngine和Blender。
我想写一篇文章会更难忘,所以我第一次尝试。请让我知道是否有任何问题。将Blender操作和UnrealEngine操作交织在一起进行区分,未经允许不得转载。
为什么 3DCG 软件可以缩放、旋转和平移?
它从结论中说。这是因为使用了矩阵乘法和齐次坐标(齐次坐标)系统。
在前半部分,我将解释缩放和旋转是如何工作的,在后半部分,我将解释平移是如何工作的。 (但是,我们将处理围绕原点的缩放和旋转。原点以外的处理将进行组合转换。详情请参阅参考书p37)
矩阵乘法是否再现了缩放和旋转?
egin{pmatrix}
1 & 0 & 0 \
0 & 1 & 0 \
0 & 0 & 2
end{pmatrix}
egin{pmatrix}
1 \
1 \
1
end{pmatrix}
を掛け算すると
egin{pmatrix}
1 \
1 \
2
end{pmatrix}となる。
这在 3DCG 中如何表示?想想一个 1x1x1 的立方体。如果您使用的是 Blender,请选择默认立方体并按 S,然后按 Z。然后按数字 2。这将使立方体的高度加倍。这是一个 1x1x2 的立方体。
也就是说,它可以解释为从(1,1,1)立方体扩展到(1,1,2)立方体。这就是缩放对象的方式。
默认立方体 (1,1,1)
立方体在 Z 方向翻倍 (1,1,2)
接下来,我们来谈谈轮换。
egin{pmatrix}
cosπ/3 & sinπ/3 & 0 \
-sinπ/3 & cosπ/3 & 0 \
0 & 0 & 1
end{pmatrix}
egin{pmatrix}
1 \
1 \
1
end{pmatrix}
这个公式表明 3DCG 上的 1x1x1 立方体围绕原点逆时针旋转了 π/3 或 60 度。让我们在 Blender 中重现它。
在此状态下,从上方中间看起来像目标标记的图标中单击 3D 光标的中心。此操作的目的是围绕原点旋转立方体。
接下来,进入R键→Z键→60。
然后可以看到立方体绕原点逆时针旋转了 60 度。这样,在 3DCG 上执行旋转(仅围绕原点)。
翻译
缩放和旋转可以用 2x2 矩阵完成,但不能用 2x2 矩阵复制平移。
写在文章的中间。 (平行运动)
参考
原创声明:本文系作者授权爱码网发表,未经许可,不得转载;
原文地址:https://www.likecs.com/show-308633112.html