我们在XNA程序中使用2个不同的渲染3D对象的方法。第一个方法需要我们手动定义一个大顶点坐标数组。这可能是一个很简单的对象,如立方体。但当我们使用到更复杂的对象,如财宝库或飞船时,它很快就变得不切实际。第二个方法使用数学公式来为我们创建形状(例如光照示例工程的圆桶)。对于规则的几何图形来说是有用的,但它又不太可能是真实世界游戏对象的值。
解决方案就是使用3D建模应用。建模应用是第三方软件产品,它提供了一个丰富的经专门设计的用户界面(通常是非常复杂的),允许构造3D模型。
除了创建几何学,大多数建模应用也允许纹理映射到它们构建的对象上,并且将提供生成的纹理坐标。它们可能也允许计算顶点法线并将它们作为对象的一部分存储。
用SketchUp中创建3D对象
最简单的3D建模应用程序就可以复杂的使用。交互式挑战描述了3D世界使用2D输入和输出设备,我们可以有效地使用(鼠标,键盘和显示器)去完成需求。尽管SketchUp的使用相对简单,但任然有很多要学习并熟练的使用它。
当SketchUp运行后,它会提示我们去选择一个模板。在2个简单模板选项中选择其中之一后(米或英尺和英寸,你更喜欢的),然后点击开始按钮,然后使用SketchUp来运行它的用户界面。默认情况下,SketchUp添加一个个人照片到一个空的场景来帮助你在透视图中放置场景的比例。作为3D对象的方式,数字是可以被删除。
我们的对象现在可以在空的场景中构建了。在(a)中显示了第一个要做的一些步骤。首先沿着x/z平面绘制一个矩形来形成房子的基础。使用Push/Pull工具来挤压这个矩形,形成一个盒子,如图(b)所示。然后使用Line工具来创建一条线穿过盒子顶部面的中心,如图(c)所示。
一旦顶部面被一分为二,已经绘制的线可以到处移动,所有连接的面将相应的移动。直接向上移动线,因此创建一个基本的但令人满意的屋顶形状,如图(d)所示。基本的房子几何学在此时已经完成了。
当然,我们将几乎确定想要给我们的对象去应用纹理来修补我们所创建的结构,我们将做到这点,来让房子看起来更逼真。SketchUp有一系列工具来给对象添加纹理。
(从左到右为,a,b,c/d,e,f)