AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > Unity3D

Unity 2D 坦克游戏教程(2):2D 地形和对撞机

51自学网 2014-05-24 http://www.51zixue.net

本文完成的场景可以在这里下载含有多边形对撞机的2D 地形

本文包括:

  • 使用多边形2D对撞机建立一个2D游戏地形。
  • 使用Unity的自动sprite检测自动裁剪和按尺寸制作一个sprite

添加地形

这次坦克从屏幕掉落到了遗落战境。我们要添加一个接地体来阻止这种情况的发生。

首先,从“Hierarchy”面板点击“Create ->Sprite”,创建一个空的sprite渲染器,如下图。在Inspector面板中把这个sprite渲染器命名为“Terrain”

接下来,下载下图的terrain.png图片。注意,我特意粗糙地裁剪了这个sprite,边缘有很多的空间。不要着急,Unity会自动修复这个!现在就让我们看看这是如何实现的。把这个文件拖拽到Unity的资源文件夹。

注意:记住在Inspector窗口把这个资源设置成sprite,然后点击“Apply”应用它

现在选择“Terrain”sprite渲染器。在Inspector面板的“Sprite”的右侧点击黑色的小点,选择刚才创建的“Terrain” sprite(具体做法参见Unity 2D 坦克游戏教程(1):简单的物理Sprite)。最后,点击“Add Component -> Physics2D -> Polygon Collider 2D”来给地形sprite渲染器添加一个2D多边形对撞机。

2D多边形对撞机 是对撞机的形式之一,能够自动检测关联的sprite的轮廓,并把它变成游戏中的一个对象。

给地形sprite渲染器添加2D多边形对撞机

如果你已经完成了上述步骤,那么场景窗口中将会出现如下的画面。

有些地方还不对

Ack。这还不是我们想要的。2D多遍形对撞机已经检测出了sprite的轮廓,但是尺寸是错的。另外,注意检测出的2D多边形对撞机(绿色网格)是偏离中心的。现在让我们来修复这些问题。

在Asset区域里,选择terrain.png,在Inspector窗口,把“Sprite Mode”设置成“Multiple”,把“Pixels To Units”设置为40,如下图。

这是告诉Unity在地形sprite里是有多个sprite的,实际上这是一个快捷方式,Unity自动裁剪sprite并将其置于中心位置。

把“Pixels To Units”设置为 40 能够解决地形的2D多边形对撞机过大的问题。

注意:不要忘记点击“Apply”按钮。

现在,你看到的应该是下图这个样子的:

现在,测试一下地形是否能正确的工作。点击 “Play”按钮启动场景。

坦克应该掉在地形上,如下图所示:

注意:如果坦克没有完全掉在地形上,那就是sprite对齐的问题。确保坦克的sprite渲染器在坦克GameObject中是正确居中的。点击坦克的‘Tank Body Sprite Renderer”,将其中心设置为0,0,0,如下图:

当启动场景的时候,坦克应该正确的检测并着落在地形上。


建议使用电驴(eMule)下载分享的资源。

说明
:本教程来源互联网或网友分享或出版商宣传分享,仅为学习研究或媒体推广,51zixue.net不保证资料的完整性。
 
上一篇:unity3d手机游戏开发教程素材第5章  下一篇:Unity 2D 坦克游戏教程(3):让坦克动起来