GAMES101-lecture04

transformation 2

旋转矩阵的逆矩阵是其转置矩阵(旋转矩阵是正交矩阵)

image-20240117221254399

3D transformation

三维的齐次坐标

image-20240117221654837

三维的仿射变换

image-20240117221745171

先运用线性变换,再使用平移

缩放

image-20240117221843023

三维旋转

image-20240117221919345

绕着哪个轴旋转,哪个轴不变

注意:绕y轴旋转有变换,按xyz顺序排,xy=z,yz=x,zx=y=-xz,所以要加个负号

旋转的完备性

image-20240117222752596

Rodrigues 旋转公式

image-20240117222954386

旋转轴默认是过原点的,即起点是原点,方向是n

解释
  1. 若旋转轴起点不在原点,则进行组合变换(先平移再旋转再平移)
  2. N矩阵,是旋转方向n的叉乘矩阵

四元数

解决旋转矩阵不好解决角度插值的问题

viewing transformation

view (camera) transformation (解决怎么看)

定义相机

  1. 相机位置
  2. 往哪看(look-at)
  3. 相机的向上方向

image-20240117225112487

相机坐标系

相机位于原点,向上是y轴,往-z方向看

image-20240117225322473

任意相机位置移动到标准位置——M
步骤:

image-20240117225750041

image-20240117225910170

平移变换:

image-20240117230020772

旋转变换:

先写出旋转的逆变换,再求逆

image-20240117230048712

物体也跟随相机进行变换M(无相对移动)

projection transformation (投影变换)

image-20240117230916239

正交投影(orthographic projection)

将相机移到标准位置——》丢掉物体的z维度——》将物体平移并缩放到[-1,1]的正方形中(约定俗成)

正式做法:

将空间中的立方体转换成标准的立方体([-1,1]的正方体)

透视投影 (perspective projection)

将远平面近平面的锥体挤压成一个长方体,再进行正交投影

image-20240118100511858

image-20240118100614161

已知部分的转换矩阵

image-20240118100848160

对第三行的推导:

已知:

  1. 近平面的点不会改变
  2. image-20240118101706270image-20240118101843172
  3. 远平面的点上的z值不会改变

得到方程组:

image-20240118102309890

image-20240118102335158

作者

luocan

发布于

2024-01-25

更新于

2024-01-28

许可协议

You need to set install_url to use ShareThis. Please set it in _config.yml.

评论

You forgot to set the shortname for Disqus. Please set it in _config.yml.