directx12 3d+vs2022游戏开发第三章 笔记五 变换

一、变换实质

总结来说就是通过矩阵和向量计算控制点变换,变换的效果可以实现局内物体的平移,旋转,缩放等一系列操作。

具体实现为先使用线性变换,即向量矩阵控制物体对于自身坐标系的旋转,缩放。

再使用仿射变换,通过在线性变换加上一个平移向量,即可实现物体的平移。

这里我们可以把线性变换理解为物体大小,形状的参数矩阵;平移向量则是物体在总坐标系的位置参数。

二、拓展进阶

根据上面的理解,我们可以知道,存放好物体大小,形状的参数矩阵,再往里面加入不同的向量矩阵,就可以实现不同的物体变换和移动的效果。

比如加入关于总坐标系下的物体旋转向量,物体移动向量。甚至可以加入不同坐标系物体控制向量,只需在进行变换时进行一些矩阵变换处理则可实现物体的精准变换。

我们也可以通过改变参考坐标来进行物体变换,即坐标变换。这实际上也是一种向量变换,即线性变换加向量变换。

这些变换都能实现所需的效果,但只是过程和变换方式不同。

相关推荐
Olrookie4 小时前
ruoyi-vue(十五)——布局设置,导航栏,侧边栏,顶部栏
前端·vue.js·笔记
使一颗心免于哀伤1 天前
《设计模式之禅》笔记摘录 - 21.状态模式
笔记·设计模式
_落纸3 天前
三大基础无源电子元件——电阻(R)、电感(L)、电容(C)
笔记
Alice-YUE3 天前
【CSS学习笔记3】css特性
前端·css·笔记·html
2303_Alpha3 天前
SpringBoot
笔记·学习
Hello_Embed4 天前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件
咸甜适中4 天前
rust语言 (1.88) 学习笔记:客户端和服务器端同在一个项目中
笔记·学习·rust
Grassto4 天前
RAG 从入门到放弃?丐版 demo 实战笔记(go+python)
笔记
Magnetic_h4 天前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa
工业3D_大熊4 天前
3D Web轻量引擎HOOPS赋能BIM/工程施工:实现超大模型的轻量化加载与高效浏览!
3d·3d web轻量化·3d模型可视化·3d渲染引擎·工业3d开发引擎·bim模型可视化