图形几何之美系列:仿射变换矩阵之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

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

相关推荐
sjsjs1119 分钟前
【多维DP】力扣3122. 使矩阵满足条件的最少操作次数
算法·leetcode·矩阵
哲学之窗22 分钟前
齐次矩阵包含平移和旋转
线性代数·算法·矩阵
原装穿山乙思密达5 小时前
如何利用矩阵化简平面上的二次型曲线
线性代数·矩阵·高等代数·解析几何
荒古前18 小时前
线性代数期末总复习的点点滴滴(1)
人工智能·线性代数·机器学习
程序猿阿伟20 小时前
《C++与 Armadillo:线性代数助力人工智能算法简化之路》
c++·人工智能·线性代数
云云3211 天前
云手机:小红书矩阵搭建方案
服务器·线性代数·安全·智能手机·矩阵
阿正的梦工坊2 天前
矩阵-向量乘法的行与列的解释(Row and Column Interpretations):中英双语
线性代数·矩阵
m0_749317522 天前
蓝桥杯练习生第四天
java·算法·职场和发展·矩阵·蓝桥杯
橘子遇见BUG2 天前
Unity Shader学习日记 part 2 线性代数--矩阵
学习·线性代数·unity·矩阵·shader
雷达学弱狗2 天前
伪逆不能把矩阵变成单位阵
线性代数·算法·矩阵