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


          声明:   本博客文章翻译类别的均为个人翻译,版权所有。转载请注明出处: http://blog.csdn.net/ml3947,另外本人的个人博客:http://www.wjfxgame.com

         这一节是紧接着上一节的。


       制作一个可以动画的砖块

       这个砖块在被破坏掉的时候需要一些动画效果。所以我们需要制作一个动画。

        1.从Orthello->Objects->Sprites里面拖动一个AnimationHierarchy视图中。 这会在OT -> Animations  下面增加一个名字类似于"Animation(id = -4320)"的Object。把它重命名为"level anims"。


        2.选中刚才新加入的OTAnimation,然后按照下图来设置属性。


        3.在Framesets下面,设置Size为3。


        4.从  OT -> Containers中把“level”,拖到OTAnimation下面的Container属性中。

        

         5. 在Orthello -> Objects -> Sprites 里面找到AnimatingSprite然后拖动到Hierarchy 视图中。这个应该会在场景中增加一个类似与"Animating Sprite(id = -23050)"的Object。重命名为"brick"。


         6.选中刚才新增的Animating Sprite,拖动之前创建的"level anims" 到 它的Animation属性上。拖动完毕后, 属性Sprite Container 应该会自动填充了 "level" container。 如果没有的话,你可以自己手动把 "level" 的Sprite Container拖动过去。


       现在,点击Play后,你应该可以在场景中看到砖块。它将会执行Animation中的所有帧。如果你不希望它在游戏开始的时候执行,将Play On Start 取消选中。


       说明: 如果你在Game视图里看不到砖块, 请确定已经把砖块的Scale设置为1, 1, 1 (有时候我们创建一个Orthello Object的时候,它的X和Y Scale 可能会变得非常小)。


       运行如图所示:

       


       给砖块添加碰撞

        我们需要给砖块添加碰撞体,来让我们的角色可以站在上面。

        1. 在 Hierarchy 视图中,选中 "brick", 把 "Collidable" 选中。这个将会自动在 Sprite 上增加一个Box ColliderRigidbody组件。


        2. 我们也需要给Object增加一个特定的tag,  在Edit -> Project Settings -> Tags里面增加 "Ground" "Ladder" 和 "Rope" 三个 Tag。


        3. 同样的,我们在Layers里面新增加两个层 "Ground" 和 "Ladder"。


        4. 选中 "brick",把它的TagLayer更改为 刚才设置的 "Ground"。

     

        我的CSDN博客地址: http://blog.csdn.net/ml3947,我的个人博客地址: http://www.wjfxgame.com。有人无脑Copy不加版权。中间插入个人信息。


       把它制作为Prefab

        所有重复使用的物体均做为Prefab,为性能考虑。这里不翻译了。


       制作静态的关卡精灵

        下一步,我们将会制作混凝土,梯子和绳子的精灵。我们将会使用相同的Container,只不过由于他们不需要动画,我们将用Sprite来替代刚才的AnimatedSprite。因为上面已经有过程,此处我将会简写。


        1. 制作混凝土砖块精灵。  

        从Orthello -> Objects -> Sprites中拖动Sprite到Hierarchy中。这会在场景中创建一个Sprite。重命名为 "concrete"。 接着从OT -> Containers 中把 level object拖动到 SpriteSprite Container属性上。目前我们可以看见精灵,只不过看到的还是砖块。我们从"Frame Index"右边,按住鼠标左右拖动调整属性,我们会看到当 Frame Index 为 14的时候,它看起来像填充的混凝土砖块。(这个索引也可以通过你制作的Sprite Atlas中看到)。

        把Collidable复选框选中。给Object添加了碰撞。

        同样将它的 Tag 和 Layer 选择为 Ground。

        最后,也将创建一个Prefab,将它拖上去。制作一个混凝土砖块的Prefab。


        2. 制作梯子和绳子精灵。

        步骤同上,不过梯子的Frame Index 为 15。绳子的Frame Index 为 17。相应的创建各自的 Prefab。


       制作底部的挡板

        现在,我们已经有了所有制作关卡的精灵了。不过,我们还需要在关卡的最下面铺一层挡板,为了避免我们的角色在最下面挖开地就掉不见了。

        这个挡板就是创建一个Cube,重命名为 "border bottom"放在屏幕适合的位置。(游戏场景的下方,可以先创建好,待会等游戏关卡创建完再放过去)。 为了让挡板Cube看起来与游戏风格类似,可以自行创建一个Meterial材质给Cube,然后将它的颜色改变为接近我们的砖块的颜色。

        

       改变背景色

        在我们准备开始制作关卡的时候,先把背景颜色改为黑色。选择 Main Camera 然后改变Background的颜色 为 0,  0, 0, 255。你应该可以看见游戏窗口的背景变黑了。

        

        制作一个关卡

        现在准备工作都已经完成了,让我们来制作一个关卡吧。

        你只需要把我们前面制作的砖块,混凝土砖块,梯子和绳子拖到场景中,复制,粘贴,然后调整位置。直到制作成为一个游戏场景。

        你可以完成一个类似与下面的场景。记住,使用Vertex Snap可以更容易调整砖块的位置。

        

        讲到这里来,已经变得慢慢有趣了。这一节中,讲述了如何使用Orthello里面的动画,精灵等。

        下一节,我们将会添加我们的角色,让我们的游戏真正动起来。

         资源文件下载,请看上一节最后。有下载地址


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


  • 相关阅读:
    软件技术文档撰写要求
    UML需求分析步骤实例解析
    sql 操作重复数据集合
    cookie无法读取的问题
    软件开发中,这些文档你用到了吗?
    软件测试报告[样本]
    一个软件设计的全过程(基于UML)
    命令 状态 职责链 三种模式之间的异同
    PHP的MVC实现(3)
    怎么样整理有用的资料?
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3104990.html
Copyright © 2020-2023  润新知