Games101-系列课程笔记-Lecture-04-Part1

Games101-系列课程笔记

Lecture 04 Transformation Cont.

  • Games101-系列课程笔记
  • 3D变换
  • 参考


本篇博客图片来自Games101-闫令琪(Lecture 04)讲义,有兴趣的小伙伴可前往GAMES101官网下载相关内容。GAMES101官网

上一篇博客介绍2D变换,为将课程思路理清后整理给大家,这篇博客介绍Lecture 04的Part 1即3D变换部分。


3D变换

  • 3D仿射变换形式:
    Games101-系列课程笔记-Lecture-04-Part1_第1张图片
  • 3D旋转矩阵
    Games101-系列课程笔记-Lecture-04-Part1_第2张图片
    可以看到排除齐次坐标和x,y,z所在轴的影响后(得到2×2矩阵)后,y轴旋转矩阵和x与z轴旋转矩阵有细微区别,x和z轴旋转矩阵右上角为sinα,左下角为-sinα和y轴旋转矩阵正好相反。我们可以这样记忆:x,y,z按循环方式排列并展开:x->y->z->x->y,那么x由y和z得到(y按字母序在z前面),z由x和y得到(x按字母序在y前面),但是y是由z和x得到(z按字母序在x后面),因此在该2×2矩阵上的次对角线上,y与x,z元素正好相反。
  • 3D旋转分解
    Games101-系列课程笔记-Lecture-04-Part1_第3张图片
    任何一个三维旋转可以分解为绕x,y,z轴的旋转。以上图为例,以飞机机身构建三维坐标系,可将任意旋转变换分解成绕x轴的旋转角(即pitch,俯仰角)、绕y轴的旋转角(即yaw,偏航角)、绕z轴的旋转角(即roll,翻滚角),并可判断x,y,z符合右手定则,坐标系成立。pitch、yaw、roll构成欧拉角,在图形学、姿态解算和惯性导航系统中应用广泛。
  • Rodrigues(罗德里格斯)旋转公式推导

下列两幅图均为个人的手推过程,参考了本篇博客

Games101-系列课程笔记-Lecture-04-Part1_第4张图片
Games101-系列课程笔记-Lecture-04-Part1_第5张图片


参考

[1]. GAMES101_Lecture_04.pdf
[2]. Shirley P , Marschner S R . Fundamentals of Computer Graphics[M]. AK Peters, 2005.

你可能感兴趣的:(Games101系列课程笔记,矩阵,线性代数,图形学,c++,图形渲染)