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

server/2025/2/2 12:35:04/

一、变换实质

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

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

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

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

二、拓展进阶

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

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

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

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


http://www.ppmy.cn/server/164336.html

相关文章

k8s--部署k8s集群--控制平面节点

环境 Vmware虚拟机,使用Ubuntu 24.04.1 LTS无桌面操作系统。 新建虚拟机参考 注意:在配置网络的时候要正确,不然后面下载系统组件会失败。 选择Docker Engine作为容器运行时。安装docker 官网容器运行时说明 关闭防火墙 sudo ufw disabl…

一文读懂Python之random模块(31)

random模块是Python的内置标准库,用于生成各类随机数,可以用作生成网站初始登录密码和随机验证码。 一、random模块简介 random模块可以生成随机数,包括随机整数、浮点数、随机元素等。 二、random模块相关概念 随机数: 是指在…

论文阅读(六):利用基因型信息作为学习基因网络的先验知识

1.论文链接:Utilizing Genotypic Information as a Prior for Learning Gene Networks 摘要: 基因型和全基因组表达数据的组合产生的分离群体提供了一个前所未有的机会来建模和解剖复杂的表型。领先的研究已经用基因型数据增强了贝叶斯网络,…

物联网 STM32【源代码形式-ESP8266透传】连接OneNet IOT从云产品开发到底层MQTT实现,APP控制 【保姆级零基础搭建】

一、MQTT介绍 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议)是一种基于发布/订阅模式的轻量级通讯协议,构建于TCP/IP协议之上。它最初由IBM在1999年发布,主要用于在硬件性能受限和网络状况不佳的情…

JVM堆空间

JVM(Java虚拟机)堆空间是Java内存管理的核心区域之一,用于存储Java对象实例。以下是关于JVM堆空间的详细介绍: 1. 堆空间的作用 • 存储对象实例:几乎所有的Java对象实例(通过new关键字创建的对象&#xf…

我的AI工具箱Tauri+Django内容生产介绍和使用

在现代内容生产环境中,高效、自动化的工具能够显著提升生产力,降低人工成本。Tauri 与 Django 结合打造的工作箱,集成了强大的 音频处理、视频剪辑、内容下载 以及 AI 文章撰写 等模块,帮助用户在多媒体内容生产的各个环节实现高效…

2.1.2 Bayer阵列与去马赛克

文章目录 Bayer阵列去马赛克方法 Bayer阵列 由于传感器只能感受到光的强度,而无法感知颜色,所以需要用红、绿、蓝颜色的滤光片将光中的R、G、B亮度滤出,再通过R、G、B的组合得到各种色彩。Bayer阵列是使用一个传感器获得彩色图像的方法&#…

Python爬虫学习第三弹 —— Xpath 页面解析 实现无广百·度

早上好啊,大佬们。上回使用 Beautiful Soup 进行页面解析的内容是不是已经理解得十分透彻了~ 这回我们再来尝试使用另外一种页面解析,来重构上一期里写的那些代码。 讲完Xpath之后,小白兔会带大家解决上期里百度搜索的代码编写,保…