admin管理员组文章数量:1026989
Transform
就像之前提到的,图形学就是几何数据的表示与处理。
假设我们已经有了一个三维场景,那么如何将其显示在屏幕上呢?毫无疑问,显示器是二维的,所以这是一个由三维到二维的过程,一个降维过程。
我们可以类比照相机,事实上,计算机很多时候做的事情其实就是客观世界的模拟与再现。通常我们想在计算机解决一个问题的时候,常见的思考方向是看看现实中是如何解决的。
我们在拍照时,总是让人们先摆好pose,这就对应图形学中的Model Transformation,包括平移,旋转,缩放,并且变换的顺序是会影响结果的;
在人们摆好pose之后,自然是找好相机角度,这就对应图形学中的View Transformation,通常我们是把相机移到原点,向上方向为Y方向,看向-Z方向,此时为了保持结果一致性,要保持模型和相机一起变换,不要产生相对运动;
第三步自然是拍照,这个过程就是相机做透视投影的过程,图形学中也是类似,先做透视投影,把三维模型挤压成长方体,然后再做正交投影。
最后是视口变换,就是把一个已经规范化的立方体转换到屏幕上,之前数据一直都是三维的,但是在这个过程中三维的会变成二维的。
PS1:由于平移不属于线性变化,无法写成矩阵相乘的形式,所以在此引入齐次坐标和仿射变化的概念,仿射变换包括线性变换和平移。
PS2:变换的顺序是有影响的,顺序不同,结果也不同,一般是先平移到原点再做相应的变换。
PS3:由于矩阵具有结合律,所以可以通过求解变换矩阵来简化运算。
PS4:相机和模型同步变换,结果不变。
PS5:先做透视投影,后做正交投影,便于理解。
在此期间,数据都是连续的,意味着可以无限放大。在下一节光栅化时,会产生采样,数据会被离散化。
Transform
就像之前提到的,图形学就是几何数据的表示与处理。
假设我们已经有了一个三维场景,那么如何将其显示在屏幕上呢?毫无疑问,显示器是二维的,所以这是一个由三维到二维的过程,一个降维过程。
我们可以类比照相机,事实上,计算机很多时候做的事情其实就是客观世界的模拟与再现。通常我们想在计算机解决一个问题的时候,常见的思考方向是看看现实中是如何解决的。
我们在拍照时,总是让人们先摆好pose,这就对应图形学中的Model Transformation,包括平移,旋转,缩放,并且变换的顺序是会影响结果的;
在人们摆好pose之后,自然是找好相机角度,这就对应图形学中的View Transformation,通常我们是把相机移到原点,向上方向为Y方向,看向-Z方向,此时为了保持结果一致性,要保持模型和相机一起变换,不要产生相对运动;
第三步自然是拍照,这个过程就是相机做透视投影的过程,图形学中也是类似,先做透视投影,把三维模型挤压成长方体,然后再做正交投影。
最后是视口变换,就是把一个已经规范化的立方体转换到屏幕上,之前数据一直都是三维的,但是在这个过程中三维的会变成二维的。
PS1:由于平移不属于线性变化,无法写成矩阵相乘的形式,所以在此引入齐次坐标和仿射变化的概念,仿射变换包括线性变换和平移。
PS2:变换的顺序是有影响的,顺序不同,结果也不同,一般是先平移到原点再做相应的变换。
PS3:由于矩阵具有结合律,所以可以通过求解变换矩阵来简化运算。
PS4:相机和模型同步变换,结果不变。
PS5:先做透视投影,后做正交投影,便于理解。
在此期间,数据都是连续的,意味着可以无限放大。在下一节光栅化时,会产生采样,数据会被离散化。
本文标签: transform
版权声明:本文标题:Transform 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1706366194a411422.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论