目录

一.目的

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

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

二.参考

1.SIKI学院

三.注意

1.版本

操作:1:17把粒子系统显示在UI之前

1.知识介绍

1.设置 把粒子系统显示在UI之前

操作:2:18让星星一颗一颗的显示

1.移除相机

1.代码:星星出现

1.运行结果:成功

操作:3:19添加暂停动画

1.解决报错问题

1.代码:Bird

1.解决bug:完成

1.将鸟和猪作为预制件

1.制作暂停按钮

1.制作暂停UI界面

1.制作:暂停UI出现的动画

1.制作:回到游戏的动画

1.按钮图标添加按钮组件


一.目的

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

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

二.参考

1.SIKI学院

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

good:学习的网址

三.注意

1.版本

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

操作:1:17把粒子系统显示在UI之前

1.知识介绍

1.设置 把粒子系统显示在UI之前

操作:2:18让星星一颗一颗的显示

1.移除相机

1.代码:星星出现

1.运行结果:成功

操作:3:19添加暂停动画

1.解决报错问题

1.代码:Bird

using System.Collections;
using System.Collections.Generic;
using UnityEngine;/// <summary>
/// 【Author:xzy;Time:2021-12-28】
/// Function:小鸟身上的代码
/// </summary>
public class Bird : MonoBehaviour
{/// <summary>bool:是否点击</summary>private bool bIsClick = false;/// <summary>float:计算鸟和弹弓的距离的最大值</summary>public float fMaxdis = 3;/// <summary>SpringJoint2D:鸟身上弹簧的组件</summary>[HideInInspector]public SpringJoint2D sp;/// <summary>Rigidbody2D:鸟身上的物理组件</summary>[HideInInspector]private Rigidbody2D rg;/// <summary>Transform:弹弓右边的位置,目的:方便计算鸟和弹弓的距离</summary>public Transform rightPos;/// <summary>Transform:弹弓左边的位置,目的:方便划线【课程08弹弓画线操作:添加】</summary>public Transform leftPos;/// <summary>LineRenderer:弹弓右边的划线组件【课程08弹弓画线操作:添加】</summary>public LineRenderer right;/// <summary>LineRenderer:弹弓左边的划线组件【课程08弹弓画线操作:添加】</summary>public LineRenderer left;/// <summary>GameObject:特效【10游戏逻辑的判定,实现多只小鸟的飞出:添加】</summary>public GameObject boom;/// <summary>TestMyTrail:拖尾【12 - 添加小鸟飞出的拖尾效果:添加】</summary>private TestMyTrail myTrail;/// <summary>bool:是否可以移动【19添加暂停动画:添加】</summary>private bool bIsCanMove = true;private void Awake(){sp = this.GetComponent<SpringJoint2D>();//获取小鸟的弹簧组件rg = this.GetComponent<Rigidbody2D>();//获取小鸟身上的物理组件myTrail = GetComponent<TestMyTrail>();//获取组件【12 - 添加小鸟飞出的拖尾效果:添加】}/// <summary>///【Author:xzy;Time:2021-12-28】/// Function: 鼠标按下/// </summary>private void OnMouseDown(){if (bIsCanMove)//【19添加暂停动画:添加】{bIsClick = true;rg.isKinematic = true;//按下小鸟,让其物理组件的动力学开启,从dynamic到kinematic}}/// <summary>///【Author:xzy;Time:2021-12-28】/// Function: 鼠标抬起/// </summary>private void OnMouseUp(){if (bIsCanMove)//【19添加暂停动画:添加】{bIsClick = false;rg.isKinematic = false;//松开小鸟,让其物理组件的动力学关闭Invoke("Fly", 0.1f);//定时器:唤醒 小鸟飞出的逻辑right.enabled = false;//禁用画线组件【11解决重复划线和小鸟轮换速度突然变大的问题:添加】left.enabled = false;bIsCanMove = false;//【19添加暂停动画:添加】}}private void Update(){if (bIsClick){//鼠标按下,进行位置的跟随,屏幕坐标转换为世界坐标transform.position = Camera.main.ScreenToWorldPoint(Input.mousePosition);transform.position += new Vector3(0, 0, -Camera.main.transform.position.z);//进行位置限制if (Vector3.Distance(transform.position, rightPos.position) > fMaxdis){Vector3 pos = (transform.position - rightPos.position).normalized;  //单位化向量:获取方向,鸟的向量减去右边弹弓的位置的向量pos *= fMaxdis; //最大长度的向量transform.position = pos + rightPos.position;}Line();}}/// <summary>///【Author:xzy;Time:2021-12-29】/// Function: 处理松开小鸟飞出的逻辑/// </summary>void Fly(){myTrail.StartTrail();//开始拖尾【12 - 添加小鸟飞出的拖尾效果:添加】sp.enabled = false;//松开小鸟,取消掉弹簧组件,小鸟就会飞出Invoke("Next", 5);//定时器:一段时候后调用Next方法}/// <summary>///【Author:xzy;Time:2021-12-29】【课程08弹弓画线操作:添加】/// Function: 画线/// </summary>void Line(){       right.enabled = true; //开启画线组件【11解决重复划线和小鸟轮换速度突然变大的问题:添加】left.enabled = true;right.SetPosition(0, rightPos.position);//画线:右边的起始位置:右边弹弓位置right.SetPosition(1, this.transform.position);//画线:右边的终点位置:小鸟位置left.SetPosition(0, leftPos.position);left.SetPosition(1, this.transform.position);}/// <summary>///【Author:xzy;Time:2021-12-29】【10游戏逻辑的判定,实现多只小鸟的飞出:添加】/// Function: 下一只小鸟被弹/// </summary>private void Next(){GameManager._instance.birds.Remove(this);//移除列表中此时小鸟元素Destroy(this.gameObject);//摧毁这个小鸟Instantiate(boom, this.transform.position, Quaternion.identity);//产生特效GameManager._instance.NextBird();//下一只小鸟出现}/// <summary>///【Author:xzy;Time:2021-12-29】【12 - 添加小鸟飞出的拖尾效果:添加】/// Function: 碰撞检测/// </summary>private void OnCollisionEnter2D(Collision2D collision){myTrail.ClearTrail();//清除拖尾【12 - 添加小鸟飞出的拖尾效果:添加】}
}

1.解决bug:完成

1.将鸟和猪作为预制件

鸟改名字为redBird

1.制作暂停按钮

改名字+添加按钮组件

1.制作暂停UI界面

然后修改名字,新建一个Image作为gb,弄成半透明

1.制作:暂停UI出现的动画

  1. 注意:在动画制作时候直接可以选择哪个对象进行处理

1.制作:回到游戏的动画

1.按钮图标添加按钮组件

Unity初级案例-愤怒的小鸟:六:17把粒子系统显示在UI之前+18让星星一颗一颗的显示+19添加暂停动画相关推荐

  1. Unity初级案例-愤怒的小鸟:四:11解决重复划线和小鸟轮换速度突然变大的问题+12添加小鸟飞出的拖尾效果+13整合场景和解决无法显示划线弹弓的问题

    目录 一.目的 1.想知道:愤怒的小鸟:如何制作 2.做好学习笔记,方便下次查看 二.参考 1.SIKI学院 三.注意 1.版本 操作:1:11解决重复划线和小鸟轮换速度突然变大的问题 1.GameM ...

  2. Unity初级案例-愤怒的小鸟:三:07猪的受伤+08弹弓划线操作+09死亡和加分特效的制作+10游戏逻辑的判定,实现多只小鸟的飞出

    目录 一.目的 1.想知道:愤怒的小鸟:如何制作 2.做好学习笔记,方便下次查看 二.参考 1.SIKI学院 三.注意 1.版本 操作:1:07猪的受伤 1.游戏逻辑 1.图片裁剪:制作背景等 1.创 ...

  3. siki学院unity初级案例炸弹人取空位置点的Bug

    问题描述:   在学习Unity初级案例炸弹人时,当取地图上的空位置点时,出现InitMap(2,2)取值不正确的情况.   程序获取的空位置点数   空位置图如下:   从图中可以看出空位置点数应为 ...

  4. c语言炸弹人小游戏,Unity初级案例 - 炸弹人

    {getUnitName} {getLessonName} 敬请期待 免费 {getTaskName} 剩余观看时长:{watchLimitRemaining} 回放 {activityStartTi ...

  5. Unity案例---愤怒的小鸟

    [SiKi学院Unity]Unity初级案例 - 愤怒的小鸟_哔哩哔哩_bilibili 笔记要点 edit--->project settings--->editor 导入资源 单击右键 ...

  6. siki学院_Unity初级案例_愤怒的小鸟_学习笔记3/3

    说明:本次学习开始于2018年9月23日,至9月26日已看完全部教学视频,并已基本完成该案例的制作,历时四天.本文档为我在学习过程中,通过记事本记录的学习过程,对于该游戏案例的制作过程并不十分详尽,不 ...

  7. siki学院_Unity初级案例_愤怒的小鸟_学习笔记2/3

    说明:本次学习开始于2018年9月23日,至9月26日已看完全部教学视频,并已基本完成该案例的制作,历时四天.本文档为我在学习过程中,通过记事本记录的学习过程,对于该游戏案例的制作过程并不十分详尽,不 ...

  8. 《Unity 游戏案例开发大全》一6.5 游戏主场景

    本节书摘来异步社区<Unity 游戏案例开发大全>一书中的第6章,第6.1节,作者: 吴亚峰 , 杜化美 , 于复兴 责编: 张涛,更多章节内容可以访问云栖社区"异步社区&quo ...

  9. python︱写markdown一样写网页,代码快速生成web工具:streamlit 数据探索案例(六)

    系列参考: python︱写markdown一样写网页,代码快速生成web工具:streamlit介绍(一) python︱写markdown一样写网页,代码快速生成web工具:streamlit 重 ...

最新文章

  1. 最长递增子序列的两种解法
  2. hiveql笔记(一)
  3. 天大和武大计算机考研,985大学排名出炉,天大和武大并列第10,榜首是哪所?...
  4. CSS 选择器优先级与效率优化
  5. 华为发布麒麟990系列芯片,余承东评论友商5G芯片:苹果没有 三星PPT
  6. WM6.0系统WIFI与笔记本点对点互联详细解析
  7. C++11中内联函数(inline)
  8. 当前音乐推荐系统研究中的挑战和愿景
  9. PhotoShop大师之路视频
  10. Microsoft Visio 2010密钥
  11. 无线网络技术导论笔记(第五讲)
  12. Android_ 弹出菜单创建
  13. 计算机添加本地安全组用户名和密码错误,win7系统访问远程共享文件夹提示未知的用户名或密码错误的解决方法...
  14. 少儿编程---小猫追气球
  15. 【Excel】数据透视表—数据透视表布局(显示)
  16. python与会计学_Python 中用于表示逻辑与的关键字分别是 ____
  17. selenium如何执行网页脚本
  18. 使用nid的修改数据库名
  19. OKHTTP学习之高级特性
  20. mysql php 乱码问题_php mysql 中文乱码问题的解决办法

热门文章

  1. Floyd 算法+例题
  2. Oracle中以insert values的形式同时插入多条记录
  3. E1. Divisible Numbers (easy version)(数学)
  4. 米家?华为?阿里?Homekit?有没有你在用的智能家居平台?
  5. Java---SSM---Spring(1)
  6. 定期进行磁盘碎片整理是对计算机系统进行,电脑需要定期对磁盘进行碎片整理吗?整理有什么好处?...
  7. 基于jsp的KTV管理系统mysql
  8. Windows10一句话从administrator权限提升到system权限
  9. 西门子三开接线图解_西门子二开三控开关接线最好有图
  10. 四个角不是直角的四边形_四边形的特点是有四条直的边和四个直角对吗