glm – 使用glm对两个glm::mat4变换矩阵进行插值
1 glm::mat4矩阵插值 在glm中我们可以使用glm::slerp方法对四元数glm::quat进行插值,比如 glm::quat result_quat = glm::slerp(start_quat, end_quat, t); 其中start_quat为源四元数,end_quat为目标…
- 3D数学基础
- 2024-07-24
Assimp的aiMatrix4x4与glm的mat4相互转换
1 Assimp的aiMatrix4x4与glm的mat4相互转换 在使用Assimp加载glb模型之后,将模型节点的mTransformation矩阵转换到glm中的mat4进行后续处理。Assimp的aiMatrix4x4与glm的mat4相关转换代码如下 #include "assimp/Im…
- 3D数学基础
- 2024-07-18
三维旋转 – 四元数的基本概念以及四元数与欧拉角、旋转矩阵的相互转换
1 引言 本文将对四元数的基本概念进行介绍,并将详细介绍四元数与欧拉角、四元数与旋转矩阵之间的相互转换。另外还将介绍如何使用四元数旋转对象,以及以及如何将多个旋转操作连接成一个四元数。 2 四元数的简单表示 一个四元数由四个元素表示: q=q_{0} +iq_{1}+jq_{2}+kq_{3} \t…
- 3D数学基础
- 2022-05-12
三维旋转 – 欧拉角和旋转矩阵的基本概念以及相互转换
本文将以常用的Tait-Bryan欧拉角为基础,描述如何从欧拉角转换为旋转矩阵,以及如何从旋转矩阵转换为欧拉角,以及如何将多个旋转连接为一个旋转矩阵。 文章分为两个部分,第一部分将详细解释相关假设和数学约定,第二部分将描述重要的转换部分以及Java和C++代码。 任何需要对三维空间的物体进行操作的人…
- 3D数学基础
- 2022-04-19
计算机图形学 – 3D数学入门之坐标系
译自: https://www.3dgep.com/3d-math-primer-for-game-programmers/ 在本文中,我想为想要参与游戏编程的人们提供一个简短的数学入门。这并不是对成为一名成功的游戏程序员必须了解的所有数学理论的详尽解释,但它是您开始成为游戏程序员之前必须了解的最少…
- 3D数学基础
- 2022-02-27
计算机图形学 – 大白话模型视图投影矩阵(MVP)以及各种变换空间(模型空间、世界空间、相机空间、裁剪空间、屏幕空间)
1 介绍 在现实世界中,如果我们要对一个物体拍照,这个物体可以是花瓶、自行车、人等等,通常会按照以下的步骤(这里以人为例进行说明): 被拍照的人先选好一个好的拍照背景,摆好pose(侧身,比心等); 摄影师举好相机,并将相机对准被拍照的人; 摄像师调整相机焦距,让被拍照的人处于照片中的合适位置,然后…
- 3D数学基础
- 2022-01-28
计算机图形学 – 常用的3D数学知识备忘,如三角函数、向量运算、矩阵运算、图形学常用的平移缩放旋转矩阵,视图矩阵,投影矩阵
1 三角函数 1.1 圆周率 \pi \approx 3.14159265f 实际上\pi有无穷个小数。 1.2 余弦与正弦 1.3 单位圆 t 是以弧度为单位的角度。 1.4 弧度与角度的转换 角度转弧度: angleRad = angleDeg * Math.PI / 180; 弧度转角度: a…
- 3D数学基础
- 2021-12-17
旋转矩阵与四元数的转换
1 左手坐标系下四元数转换为旋转矩阵 1.1 转换思路 给定一个用于旋转的单位四元数q=w+xi+yj+zk和被旋转的三维向量v,那么首选需要构造一个纯四元数: p=(v,0) 设旋转后的向量为v',那么旋转之后的向量构造的纯四元数为 p'=(v',0) 那么, p'=qpq^{-1} 1.2 转换…
- 3D数学基础
- 2020-03-27
矩阵 – 行主序矩阵与列主序矩阵
1 线性代数中矩阵的标准定义 矩阵的标准定义: 矩阵A与B的乘积矩阵C的第i行第j列的元素c(ij)等于A的第i行与B的第j列的对应元素乘积的和。 无论是Direct3D或者OpenGL,所表示的矢量和矩阵都是依据线性代数中的标准定义的。 2 行主序矩阵与列主序矩阵 矩阵的存储方式分为两种,一种是行…
- 3D数学基础
- 2020-03-20
计算机图形学 – 三维空间中的左、右手坐标系旋转矩阵与旋转变换
在三维空间中,绕着X轴,Y轴,Z轴的旋转可以使用4*4的矩阵表示,而根据左右手坐标系的不同,又可分为左手坐标系下的三维旋转矩阵和右手坐标系下的三维旋转矩阵。矩阵采用列主序。 1 左手坐标系下的旋转矩阵 左手坐标系下,正旋转是绕旋转轴顺时针旋转,可以理解为从旋转轴的正方向看向原点的顺时针方向。 设旋转…
- 3D数学基础
- 2020-02-17