您的位置:首页 > 移动开发 > Unity3D

Unity3D系列教程–使用免费工具在Unity3D中开发2D游戏 第二节(上)

2013-05-27 23:14 1116 查看
  声明:   本博客文章翻译类别的均为个人业余时间翻译,版权所有。转载请注明出处:http://www.wjfxgame.com,另外本人的CSDN博客:http://blog.csdn.net/ml3947

   

  译者说明: 

       公司目前的3D项目由OGRE 3D转为Unity3D了,由于整个3D项目组只有我对Unity3D比较熟,所以前期研究工作都是我来完成的。截至今天,基本上一些像Unity3D双屏3D模式啊,控制鼠标,模拟鼠标事件,调用OpenCV等重点技术问题都已完美解决,所以我们这边TM,MD和台北开了紧急会议,全面转向Unity3D。而且TM居然还申请到了一个月学习时间-
-!!让我给大家培训一下Unity3D的相关内容。不过Unity3D这个东西,跟其他的很多技术类似,入门容易精通难,大部分人都只是在做一些很简单基础的东西,还好我也可以通过这一段宝贵的时间来提高自己,不用老是在晚上挤时间了。JavaFX那个游戏引擎的话,进度就比较慢了,但在我计划中,本身也就是慢慢做,不会花很多的时间在上面,因为JavaFX前景还不是很明朗,我也在等着JavaFX的下一个重大更新。

       废话又说了一堆,就像上一节所说,写博客人的通病....

      

       上一节中,我们主要介绍了一些我们游戏开发中需要用到的免费的插件和工具,以及他们如何初始化。这一节中,我们将会学习如何创建关卡,然后完成我们这个游戏的第一关。

       我们在第一节讲述的所有插件中,最主要的还是Orthello 2D。Orthello在新的版本中更新了一些很酷的新特性。请确认你正在使用1.6a或更新的版本。

     Build Settings

     File -> Build Setting ,选择WebPlayer(如果你喜欢的话,也可以使用PC and Mac Standalone),然后关闭Build Setting窗口。
        

       Player Settings

       Edit -> Project Setting -> Player, 在Per-Platform Settings下面点击Resolution and Presentation,然后改变 Screen Width 为 800,  Screen Height 为 600.
 

     Render Settings

       由于我们通常不会在2D游戏中使用Unity3D的灯光系统,我们必须通过调整Unity3D默认的环境光来让游戏场景显得更加明亮。步骤如下:
       
       1. Edit -> Render Settings...

       2. 点击 Ambient Light 然后,把它的颜色改变为(255,255,255,255).
           
       
     Orthello 2D初始化设置
       1. 在Unity的Project的视图里,进入Orthello -> Objects,然后将 OT object拖到项目场景中。

       2. 在 Hierarchy 视图里,点击 OT object将它展开,然后点击 View。在 View的属性下,设置 Pixel Perfect Resolution 为 800 x 600.

       3.更改Custom Size为 10.

      现在,如果你在 Hierarchy中选中 Main Camera, 你将会看到 它的Projection已经被更改为 Orthographic 而且 Size 被改为 10. 当你将OT object添加到场景的时候,Orthello 会自动将它的Projection从Perspective更改为Orthographic。而且当我们改变
Orthello View 的 Custom Size 的时候, Main  Camera的Size也会改变。

      经过一系列的实验,我发现了,在设置为800 x 600的分辨率 和 size为 10 的情况下,一个1 x 1 x 1的Cube将会在屏幕中占用30的像素。这样准确的像素大小,将让我们在制作关卡的时候创建网格变得更加容易。

      当你完成了以上步骤后, 你的工程文件应该看起来像下图。注意,我已经在场景中增加了一个Cube。
      


          

      制作关卡的Sprite Atlas

         现在你已经知道所有的初始化设置步骤了。 是时候让一切都变得更加有趣。我们在这个游戏中的关卡贴图主要包含如下几个简单的部分: 砖块(可以被挖开的),混凝土(不能被挖开的),梯子和绳子。
 
         下载精灵图片,然后解压到任何位置。(译者注:详细的请看最下面的文件下载地址,里面会包含精灵的)。

         打开TexturePacker  然后拖动所有的.png文件从sprites/leve和sprites/shoot文件夹到 Sprites的面板。

         Texture Settings / Layout

         设置 Algorithm为Basic,取消Trim的选中,取消Enable Auto Alias的选中。

         Texture Settings  / Output

         将Data的格式设置为cocos2d。在Data File下,点击"..."按钮,浏览你想要存放你的精灵的目录(我把它放在项目的Assets/SpriteAtlases中),将名称改为level
然后点击Save保存。
         TexturePacker将会自动添加.plist到Data File中,不过Unity需要文件为.xml,所以在输入框中,我们将.plist改为.xml.
         现在这个Texture File的路径应该已经被设置为跟.xml相同的路径了。
     
         如果你已经做了上面的步骤,你的TexturePacker应该看起来下如下图:
        


         现在如果你点击Publish,然后返回到Unity,你可以看到一个SpriteAtlases文件夹,而且还有Sprite Atlas和一个Data文件在里面。
        
         我们需要在Unity里对Sprite Atlas做一些改变让它看起来正确。
        1. 在Project视图里选择level.png,把 Filter Mode 改为 Point
       2. 点击Override for Web,将
Format 设置为 Truecolor然后点击 Apply 应用。

      制作关卡精灵

        现在是时候使用Orthello,然后把Atlas转变为精灵对象了。

        The Sprite Container

       1. 在Unity3D的Project视图中,展开Orthello文件夹:Orthello ->  Objects -> Sprites - > SpriteAltas然后拖动SpriteAtlas-Cocos2D到Hierarchy中。
        2. 在Hierarchy视图中,展开OT object,你将会在Containersobject下面看到一个类似与"Container(id=-684)"的东西。这个Container将会收容我们所有的关卡精灵。我们可以将它改名为level。
      3. 将level.png从SpriteAtlases文件夹拖动到"OTSprite Atlas Cocos 2D"脚本中的Texture属性中。
        4. 将level.xml从SpriteAtlases文件夹拖动到 Atlas Data File 属性中。现在当你把 Atlas Data 属性展开,你可以看见我们用TexturePacker打包的图片里的所有的图块了。

        如下图所示:
          


         这一章有点长,由于现在时间也不早了,我决定把它分为上下两节,明天晚上继续翻译。其实各位朋友感兴趣的话,也可以等我全翻译完了再看。 
   
        这节所用的贴图资源下载地址:点击  。

        转载请注明出处:http://blog.csdn.net/ml3947

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Unity3D Orthello
相关文章推荐