观察空间矩阵是把像机在世界坐标变换为世界坐标的原点的矩阵,而世界坐标的顶点通过此矩阵的变换,会转换为以像机为原点的坐标系。

设像机在世界坐标(5,5,0),F点在世界坐标(6,6,0),当像机为原点时,以世界坐标系来观测像机和F点的关系,是F点在像机坐标系的(1,1,0)位置,世界坐标系的原点在像机坐标系里(-5,-5,0)位置 (类似平移矩阵的操作)。

但问题的关键在于:

为什么世界空间左手坐标系(unity),观察空间就变为右手坐标系了呢,Z轴值取反?

解释:opengl里是没有像机这个概念,但为了实现这个效果,进入观察空间(摄像机空间里),像机视角移动的时候,世界空间顶点实际是往相反方向移动,从而产生一种像机在移动的错觉。

在世界坐标上F点在(5,5,5),在世界坐标的原点上有个像机观测点F,那么以像机的视角(右手坐标系)来看点F,那F点在观察空间的(5,5,-5)坐标上。此时像机视角要向前靠F点,如果此时像机视角不移动且满足视角向前移动,那么观察空间(右手坐标系)里F点就要向Z轴正方向5移动(右手坐标系)。

观察空间(右手坐标系)F点向Z轴正方向5移动,以世界空间坐标系(左手坐标系)看F点是以Z轴负方向5移动;

还有一种解释就是世界空间坐标系整体含F点(左手坐标系),往观察空间(右手坐标系)的Z轴正方向移动5,在观察空间里世界坐标系整体的原点在(0,0,5)位置上,F点在(5,5,0)。

再以观察空间(右手坐标系)(0,0,5)位置上为世界坐标系的新原点观测(左手坐标系),那像机视角的原点就在(0,0,5),F点还在(5,5,5)。

此时以世界坐标旧原点(左手坐标系)来看世界坐标系新原点在Z轴负方向(0,0,-5)位置,像机在原点,F点在(5,5,0).

打开三维软件,拉个盒子,对着盒子再创建个摄像机,进入像机视角再往上移动视角,实际不是视角在向上移动,而是盒子在向下移动。

太抽象了,浪费脑细胞

疑问1:进入像机视角移动像机位置并退出像机视角进入世界空间,为什么像机的坐标会发生移动?

解释:所进入的像机模型在进入观察空间时就被隐藏了,当像机视角移动像机位置时,它也在做相应的位移,还有就是移动的是整个世界坐标系.

疑问2:像机视角内移动物体,那移动的物体坐标是左手还是右手?

解释:左手坐标系,因为那是裁剪空间,唯一的右手坐标系仅像机视角,像机模型也不是。

能意识到哪里还有点问题,但整体自我感觉良好。

世界坐标系到观察坐标系的变换步骤_shader观察(像机)矩阵变换的一己之见相关推荐

  1. 世界坐标系到观察坐标系的变换步骤_《3D数学基础》提炼总结(九)矩阵和线性变换...

    一.变换物体与变换坐标系 在讨论变换前,必须要搞清楚到底要变换什么. 考虑2D中的例子"将以物体顺时针旋转20度".变换物体(本例中为旋转),以为这旋转物体上所有的点,这些点将被移 ...

  2. 世界坐标系到观察坐标系的变换步骤_带你轻松认识不同坐标系下向量的“变脸”——基变换...

    这是<机器学习中的数学基础>系列的第6篇. 今天我们来介绍基变换,简单地说,基变换就是把向量用不同的基来表示.我们来举个例子: 图1 如上图,在我们常见的标准坐标系中,有一个向量w=(2, ...

  3. DirectX 3D_基础之模型表示 顶点格式 三角形 索引 虚拟摄像机 投影窗口 绘制流水线 局部坐标系 观察坐标系 世界坐标系 背面消隐 光照 裁剪 投影 视口变换 光栅化

    每日一语: 当一切都安于现状后,这个社会就无法发展,也就无法从原始社会发展到现代社会,对于人也是一样,如果我们一直安于现状,就无法有更大更好的发展,我们不要想着,一直可以过安逸的生活,程序员这个职业, ...

  4. [图形学] 坐标系变换——从世界坐标系到相机坐标系

    坐标系变换是图形学中最基础的部分,一个物体从建模到显示在屏幕,经历了从物体坐标系到世界坐标系,再从世界坐标系到观察坐标系,最后通过投影到2D平面,再变换到屏幕坐标等一系列过程. 投影矩阵 我们可以很容 ...

  5. python 点云从相机坐标系到世界坐标系/ 世界坐标系到相机坐标系下的变换

    问题: 已知相机外参 extr 和 相机坐标系下的点云 pc 求解世界坐标系下的 点云 pc 或 已知相机外参 extr 和 世界坐标系下的点云 pc 求解相机坐标系下的 点云 pc notes: 1 ...

  6. OpenGL笔记:观察坐标系(模型视图矩阵)、投影变换

    观察坐标系参数 说明:其中观察方向与+Zview相反. 观察平面法向量 观察方向通常沿着Zview轴,因此观察平面,有时也称投影平面一般假设为与该轴垂直.这样,观察平面的方向 及正Zview轴可定义为 ...

  7. 世界坐标系,相机坐标系,平面坐标系,像素坐标系

    转载: 世界坐标系,相机坐标系,图像坐标系,像素坐标系 世界坐标系.相机坐标系.图像坐标系.像素坐标系之间的转换 一.世界坐标系到相机坐标系 世界坐标系,也称为测量坐标系,它是一个三维直角坐标系(xw ...

  8. (五)carla中世界坐标系与相机坐标系、像素坐标系变换

    (五)carla中世界坐标系与相机坐标系.像素坐标系变换 由于实验需要将 carlacarlacarla 中世界坐标系下的坐标点画到相机采集的前视图上,故需要进行坐标系之间的转换. 转换中遇到的问题 ...

  9. 相机参数和相机模型各个坐标系(世界坐标系、相机坐标系、图像坐标系、像素坐标系之间变换)

    坐标系变换 1. 几个坐标系: 世界坐标系(world coordinate system): 用户定义的三维世界的坐标系,为了描述目标物在真实世界里的位置而被引入.单位为m. 相机坐标系(camer ...

最新文章

  1. linux shell for 循环变量,shell for循环总结
  2. java 二维数组内存溢出_模拟Java内存溢出
  3. DataView.RowFilter的使用(包括in,like等SQL中的操作符)
  4. Oracle数据库日常管理之数据备份,恢复及迁移 (第五讲 )
  5. 未来属于SVO? - KlayGE游戏引擎
  6. plsql学习笔记---plsql相关概念,以及基础结构
  7. 转:ElasticSearch 插件安装
  8. bat 执行php文件
  9. LTE:资源调度(5)
  10. ADS系列之SIPI仿真笔记:ADS多种版本的安装、卸载重装(一)
  11. MapGuide应用最佳实践—MapGuide Server和MapGuide WebExtension分开部署
  12. 企业微信api接口调用-通过手机号或微信好友添加客户
  13. C库-atoi(), atol(), atoll(), atof(), ceil(), ceilf(), ceill()
  14. 怎样提升小程序UV访客,快速开通流量主!
  15. 混淆矩阵 python实现
  16. STM32F103C8T6使用RTC实现日历读取、设置和输出
  17. photoshop的应用领域
  18. 超简单的页面(图片、文字、布局。。。)等比缩放
  19. 数字IC设计工程师笔试面试经典100题-有答案
  20. 做销售管理,需要分析哪些关键指标?

热门文章

  1. 【LeetCode】剑指 Offer 25. 合并两个排序的链表
  2. slf4j和log4j的使用
  3. 记录配置fast rcnn(caffe)仅CPU遇到的问题
  4. VALSE2019总结(6)-年度总结-物体检测
  5. 数据可视化可视化营养含量
  6. 文件用户Apache shiro学习笔记+ spring整合shiro (一)
  7. 有趣的圣诞节 库的打包
  8. HTTP 错误 404.2 – Not Found
  9. Spring Boot 菜鸟教程 application.properties 常用配置
  10. (转)SpringMVC学习(二)——SpringMVC架构及组件