Unity初级案例-愤怒的小鸟:五:14添加失败和胜利的游戏UI界面+15修改火花粒子系统+16渲染层级关系+17把粒子系统显示在UI之前

目录

一.目的

1.想知道:愤怒的小鸟:如何制作

2.做好学习笔记,方便下次查看

二.参考

1.SIKI学院

三.注意

1.版本

操作:1:14添加失败和胜利的游戏UI界面

1.新建UI的Image作为失败、胜利的整体背景图

1.在lose下再新建Image,作为按钮的背景图

1.切割按钮图​ 

1.设置按钮

1.设置lose界面的动画 ​

1.设置win界面+动画

1.代码:GameManager:制作输赢

1.代码:Win:给赢的UI添加逻辑

1.动画设置:win界面动画播放完毕,显示星星

1.运行结果:成功

操作:2:15修改火花粒子系统

1.裁剪星星+添加星星到赢的UI界面中

1.导入火花粒子的资源

1.烟火粒子特效调整

操作:3: 16渲染层级关系

1.渲染层级知识: 


一.目的

1.想知道:愤怒的小鸟:如何制作

2.做好学习笔记,方便下次查看

二.参考

1.SIKI学院

登录 - SiKi学院 - 生命不息,学习不止!

good:学习的网址

三.注意

1.版本

  1. Unity2017.2.0f3
  2. VS2019
  3. UnityHUB 2.5.6

操作:1:14添加失败和胜利的游戏UI界面

1.新建UI的Image作为失败、胜利的整体背景图

新建后,如图所视,全屏显示+改名字为lose

如果所视将其弄成半透明度

 

1.在lose下再新建Image,作为按钮的背景图

如图所视,将其颜色、位置等设置好

1.切割按钮图

 

1.设置按钮

如图所视设置2个按钮图片+1个猪头 +改名字为home和retry

 

 

 

1.设置lose界面的动画 

 

1.设置win界面+动画

基本都是从lose界面和动画中复制过来的+将win里面的动画修改一下

 

1.代码:GameManager:制作输赢

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

/// <summary>
/// 【Author:xzy;Time:2021-12-29】【10游戏逻辑的判定,实现多只小鸟的飞出:添加】
/// Function:小猪身上的代码
/// </summary>
public class GameManager : MonoBehaviour
{
    /// <summary>List:所有的小鸟【10游戏逻辑的判定,实现多只小鸟的飞出:添加】</summary>
    public List<Bird> birds;

    /// <summary>List:所有的猪【10游戏逻辑的判定,实现多只小鸟的飞出:添加】</summary>
    public List<Pig> pigs;

    /// <summary>单例【10游戏逻辑的判定,实现多只小鸟的飞出:添加】</summary>
    public static GameManager _instance;

    /// <summary>Vector3:初始化位置【11解决重复划线和小鸟轮换速度突然变大的问题:添加】</summary>
    private Vector3 originPos;

    /// <summary>GameObject:赢界面【14 - 添加失败,胜利的游戏UI界面:添加】</summary>
    public GameObject win;

    /// <summary>GameObject:输界面【14 - 添加失败,胜利的游戏UI界面:添加】</summary>
    public GameObject lose;


    private void Awake()
    {
        _instance = this;//单例

        if (birds.Count>0)
        {
            originPos = birds[0].transform.position;//【11解决重复划线和小鸟轮换速度突然变大的问题:添加】
        }
    }

    void Start()
    {
        Initialized();//【10游戏逻辑的判定,实现多只小鸟的飞出:添加】
    }

    /// <summary>
    ///【Author:xzy;Time:2021-12-29】【10游戏逻辑的判定,实现多只小鸟的飞出:添加】
    /// Function: 小猪碰撞检测
    /// </summary>
    private void Initialized()
    {
        for (int i = 0; i < birds.Count; i++)
        {
            //初始化时候,让第一个小鸟能够被弹,其余的都不能
            if (i == 0)
            {
                birds[i].transform.position = originPos;     //第一只小鸟位置在初始化位置【11解决重复划线和小鸟轮换速度突然变大的问题:添加】
                birds[i].enabled = true;
                birds[i].sp.enabled = true;
            }
            else
            {
                birds[i].enabled = false;
                birds[i].sp.enabled = false;
            }
        }
    }

    /// <summary>
    ///【Author:xzy;Time:2021-12-29】【10游戏逻辑的判定,实现多只小鸟的飞出:添加】
    /// Function: 下一只小鸟
    /// </summary>
    public void NextBird()
    {
        if (pigs.Count > 0)
        {
            if (birds.Count > 0)
            {
                //下一只飞吧
                Initialized();
            }
            else
            {
                //输了
                lose.SetActive(true);//【14 - 添加失败,胜利的游戏UI界面:添加】
            }
        }
        else
        {
            //赢了
            win.SetActive(true);//【14 - 添加失败,胜利的游戏UI界面:添加】
        }
    }

    /// <summary>
    ///【Author:xzy;Time:2022-01-01】【14 - 添加失败,胜利的游戏UI界面:添加】
    /// Function: 显示星星
    /// </summary>
    public void ShowStart()
    {

    }

}

 将对象拖拽到合适位置

 

1.代码:Win:给赢的UI添加逻辑

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

/// <summary>
///【Author:xzy;Time:2022-01-01】【14 - 添加失败,胜利的游戏UI界面:添加】
/// Function: 赢界面的代码
/// </summary>
public class Win : MonoBehaviour
{

    /// <summary>
    ///【Author:xzy;Time:2022-01-01】【14 - 添加失败,胜利的游戏UI界面:添加】
    /// Function: 动画播放完毕,显示星星
    /// </summary>
    public void Show()
    {
        GameManager._instance.ShowStart();
    }
}

 

1.动画设置:win界面动画播放完毕,显示星星

 

1.运行结果:成功

 

操作:2:15修改火花粒子系统

1.裁剪星星+添加星星到赢的UI界面中

如图进行设置做好 左中右3个星星

 

 

1.导入火花粒子的资源

 

1.烟火粒子特效调整

 

操作:3: 16渲染层级关系

1.渲染层级知识: 

1. 

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值