首先有两个坐标系。

        世界坐标系

        观察坐标系

                世界坐标系是三维物体的绝对坐标

                观察坐标是基于观察者的坐标,方便我们计算。

物体想要被描述,一般使用世界坐标。所以,会有坐标转换的过程。就是从一个坐标变换到另一个坐标。提到变换,用线性代数的矩阵是非常好表示的。

世界坐标左乘某矩阵,就可以得到观察坐标。而这个矩阵的向量组就是由观察空间的基构成。

所以,构建三维的观察坐标系(或者说观察空间),会需要

        right:右向量

        up:竖向量

        front:前向量

恰好对应屏幕上x轴,y轴,z轴

为了符合视觉效果,通常会把物体在屏幕上拉伸,

        right        x轴拉伸

         up         y轴拉伸

         front         z轴拉伸,但表现上是整体拉伸(对应zoom)

对应变换观察向量组,就可以实现观察向量的整体移动

rd = mat3(r,u,f)*(uv,1.);

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐