赞
踩
这里介绍3d世界中的世界空间,观察空间,以及模型空间(局部空间),在这些空间可创建相机,只有透过相机观察到的图元才能绘制到屏幕上。这里将介绍如何实现一个静态相机,以及如何与一个着色器常量缓冲一起工作,着色器常量缓冲位于着色效果文件中,会被着色器所使用,可在代码中修改这些变量。
3D世界空间由世界空间,观察空间(摄像机空间),裁剪空间,模型空间以及屏幕空间组成。可使用这些空间来创建相机,只会显示透过相机观察到的图元。要使用这些空间,将会把它们传送到效果文件的常量缓冲中去,顶点着色器会通过它来决定如何构建一个物体的顶点坐标位置。
模型空间(局部空间)
模型空间是相对于对象说的。创建对象通常是以点(0,0,0)为中心的,这样做会更容易创建和定义顶点。如果以真实3d场景中心点(0,0,0)来创建立方体,则定义顶点将会很困难,尤其是当立方体还有标题时,不仅如此,如果要构建森林时,此时就需要大量不同顶点的树才行,这很浪费,实际上可以只需要先创建一颗树然后不断拷贝并摆放好位置即可。
模型空间相对于对象的其他顶点来定义顶点位置的。模型空间的顶点位置通常定义在一个包含3d对象的文件内,它是由3d模型程序创建的。
世界空间
世界空间用来放置对象,每个对象在世界空间中都有它们自己独一无二的世界空间矩阵。世界空间就是3d场景中的对象位置,尺寸以及旋转。所有对象都以世界空间的位置(0,0,0)为中心放置。要创建世界空间矩阵,就要对对象进行转换(比如平移,旋转,缩放)。
世界空间是由每个对
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。