图形几何之美系列:仿射变换矩阵之Y-Up和Z-Up

" 图形学中Y-Up和Z-Up的概念也会让人困惑,这是什么?为什么要这样?该怎么转换?"

  1. 图形几何之美系列:三维实体结构表达

  2. 图形几何之美系列:仿射变换矩阵

  3. 图形几何之美系列:仿射变换矩阵(二)

  4. 图形几何之美系列:仿射变换矩阵之先转后偏

1.前言

所有的3D工具都包含一个具有X、Y和Z轴的三维环境。在这些工具中,X轴方向是相同的,即在前视图是从左到右的水平线。

然而, 不同的 3D 工具可能对Y轴和Z轴的朝向有不同的解释。一些3D工具是Y-Up的, 即Y轴是竖直方向的;而其他的3D工具是Z-Up的, 即Z轴是竖直方向的。

2.部分3D软件中的规则

不同的3D工具关于竖直方向(Up方向)是Y轴还是Z轴有不同的定义 ,而处理的比较好的3D工具是可以自动的进行Y-Up/Z-Up间的转换的,即支持Y-Up、Z-Up的模型导入,自动的针对性做不同的处理,让模型能够正常显示和使用。
图:部分3D软件中的Up轴规则

由上图可知,如果是Z-Up的模型,导入到Y-Up的3D工具中,或者将Y-Up的模型导入到Z-Up的3D工具中,如果不作处理的话,那么模型显示将是错误的。

那么该怎么处理呢?大家仔细看看图,结合上述章节中的仿射变换矩阵构成和原理,想一想~

提示

详细讲解可参考作者CSDN博文:Y-Up和Z-Up的概念

3.Y-Up转Z-Up

由Y-Up 转换为Z-Up,可以对模型绕着X轴旋转π/2(弧度)来达到此操作,相当于应用如下的转换矩阵:
图:Y-Up到Z-Up的矩阵构造

同理,由Z-Up转换为Z-Up,可以对模型绕着X轴旋转-π/2(弧度)来达到此操作;

图:Z-Up到Y-Up的矩阵构造

补充

glTF格式标准是Y-Up,存储还是按照X、Y、Z,只不过Y的数据是模型的Up方向的,解析glTF的业务方都是按照这个标准来解析,如果显示的平台是Z-Up的,就需要对模型做转换,转换过程见上文。

  1. 图形几何之美系列:三维实体结构表达

  2. 图形几何之美系列:仿射变换矩阵

  3. 图形几何之美系列:仿射变换矩阵(二)

  4. 图形几何之美系列:仿射变换矩阵之先转后偏

  5. 图形几何之美系列:仿射变换矩阵之Y-Up和Z-Up

欢迎关注,图形几何之美系列 将继续更新......

相关推荐
sheeta19989 小时前
LeetCode 每日一题笔记 日期:2025.03.19 题目:3212.统计X和Y频数相等的子矩阵数量
笔记·leetcode·矩阵
无水先生14 小时前
理解线性代数的对偶性质
线性代数
Tisfy15 小时前
LeetCode 3212.统计 X 和 Y 频数相等的子矩阵数量:前缀和
算法·leetcode·前缀和·矩阵
Frostnova丶15 小时前
LeetCode 3212. 统计X和Y出现次数相等的子矩阵数量
算法·leetcode·矩阵
佑白雪乐15 小时前
<矩阵_前缀和>LeetCode3212. 统计 X 和 Y 频数相等的子矩阵数量
算法·矩阵
sheeta199815 小时前
LeetCode 每日一题笔记 日期:2025.03.18 题目:3070.元素和小于等于k的子矩阵的数目
笔记·leetcode·矩阵
历程里程碑1 天前
链表-----
数据结构·线性代数·算法·链表·矩阵·lua·perl
一叶落4381 天前
LeetCode 54. 螺旋矩阵(C语言详解)——模拟 + 四边界收缩
java·c语言·数据结构·算法·leetcode·矩阵
优思学苑1 天前
优思学院:QC新七大手法之「矩阵图法」是?
线性代数·矩阵
phoenix@Capricornus1 天前
样本矩阵、增广样本矩阵与规范化增广样本矩阵
线性代数·矩阵