一、过程总结

(一)搭建场景

1、创建新项目——2D。

2、新建文件夹Sprites用于存放所需素材。

3、将ground拖入scene并根据图片进行分辨率的设置。

4、调整摄影机size。

5、新建空物体Map,将ground和Hole作为Map的子物体,并将Hole的Order in Layer 值设置为1,ground的Order in Layer为0,确保Hole在ground上层显示。


6、保存场景为s1。

(二)制作地鼠

1、添加地鼠素材Gophers和Gophers_Beaten,并添加Box Collider 2D。

2、在Gophers上添加脚本Click,Gophers_Beaten上添加脚本Disappear,用于控制单击地鼠后的效果。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Click : MonoBehaviour {public GameObject mouse2;void Start () {Destroy(gameObject,1.5f);}void OnMouseDown() {Instantiate(mouse2,transform.position,Quaternion.identity);//当前位置生成mouse2Destroy(gameObject);//点击销毁}}

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Disappear : MonoBehaviour {void Start () {Destroy(gameObject,0.5f);}void Update () {}
}

3、将Gophers和Gophers_Beaten作为预制体。

4、新建脚本CreateTarget用来控制地鼠的随机生成。将脚本添加至空物体CreateTarget。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class CreateTarget : MonoBehaviour {public GameObject mouse1;void Start () {InvokeRepeating("Create",0,1);}void Create() {Vector3 pos = Vector3.zero;int id = 0;id = Random.Range(0, 9);//产生随机数switch (id) {case 0:pos = new Vector3(-2,1,0);break;case 1:pos = new Vector3(-2,0, 0);break;case 2:pos = new Vector3(-2,-1, 0);break;case 3:pos = new Vector3(0,1, 0);break;case 4:pos = new Vector3(0,0, 0);break;case 5:pos = new Vector3(0,-1, 0);break;case 6:pos = new Vector3(2,1, 0);break;case 7:pos = new Vector3(2,0, 0);break;case 8:pos = new Vector3(2, -1, 0);break;}Instantiate(mouse1,pos,Quaternion.identity);  }void Update () {}
}

5、添加声音appear给预制体Gophers,beaten给预制体Gophers_Beaten。

(三)分数设置

1、添加UI——Text,设置Text位置、大小、颜色等信息。

2、新建Score脚本,对分数进行设置。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class Score : MonoBehaviour {public static int score;Text text;void Start () {text = GetComponent<Text>();score = 0;}void Update () {text.text = "Score:" + score;}
}

3、在Disappear脚本中添加有关分数的语句。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Disappear : MonoBehaviour {int scoreValue = 10;void Start () {Destroy(gameObject,0.5f);Score.score += scoreValue;}void Update () {}
}
(四)完成

二、收获总结

1、3D物体自带Box Collider,而2D物体则需要自行添加Box Collider 2D方可使用;
2、利用 InvokeRepeating函数实现了地鼠出现位置的随机生成;
3、在同一位置已经出现地鼠,并且在还未击打的情况下仍会重叠出现地鼠。(不足)

Unity 2D 打地鼠游戏制作过程总结相关推荐

  1. Untity小球酷跑游戏制作过程

    Untity小球酷跑游戏制作过程 一创建一个项目 然后鼠标右键点击3D object 创建游戏中所需要的模型. 下面是我所建的几个模型 然后将下面视图比列调整为16:10 第二步 设置小球属性 这里为 ...

  2. Unity ~2D精灵动画制作

    Unity 中如果要进行2D游戏的开发,刚开始没有选择2D创建项目的时候,需在Unity 中进行设置 1.Etid–>Project Settings–>Etidor 2.将相机设置为正焦 ...

  3. UIN-app打地鼠游戏制作

    uin-app快速制作打地鼠游戏 1.注册账号 访问uniapp官网, 注册账号 https://www.dcloud.io/index.html a. 点击 开发者后台 b. 注册账号 c. 进入注 ...

  4. 【Unity小游戏】整整一个周末写一款《皇室战争 玩法》 的 即时战斗类 游戏Demo。两万多字游戏制作过程+解析

  5. AR联机游戏制作过程记录(11.11)

    AR的摄像机:在unity中,多人AR的摄像机位置一直是(0,0,0).(所以每个人进入游戏场景中的时候都叠在一起的吗).当一个玩家生成某个(0,2,0)位置的A物体时.其他玩家看到的那个A物体也是处 ...

  6. Unity 2D案例学习——制作Roguelike随机地下城

    01简介 该学习案例来自b站up主M_Studio的系列视频制作Roguelike随机地下城,此篇博客为案例学习笔记 Notice 1.该项目不包含包括敌人在内的一些游戏元素,仅为具有基础功能的dem ...

  7. Unity 2D血条制作方式

    博主在前两篇博客中写了关于分段式血条和多层血条的实现方式,但是基于一下初学者的考虑,还是决定把2D的血条制作方式也是贴出来,方便大家进行学习和使用. 第一步:我们创建一个Slider,把图片和背景修改 ...

  8. Unity 3d飞机游戏制作1

    Unity 简单的飞机控制器脚本 前言 前几天突发奇想的想做一个3d飞机游戏,于是先自己写了一下简单的控制器,发现效果不是很好.之后浏览了一下网上的资源发现免费的不全,别的要钱.只好自己设计了.下面是 ...

  9. 个人打地鼠游戏制作流程

    1.新建场景和文件夹,将素材导入对应文件夹中. 2.在unity中更改ground和Hole的参数,将Texture Type改为Sprite(2D and UI),并取消Generate Physi ...

  10. 小球酷跑游戏制作过程

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文 前言 制作小球酷跑 提示:以下是本篇文章正文内容,下面案例可供参考 一.制作实验场景 设计背景颜色: 二.创建代码 1.摄像机代码 代码 ...

最新文章

  1. git无法pull仓库refusing to merge unrelated histories
  2. 【POJ - 2195】Going Home(二分图最优匹配,费用流 或 KM)
  3. 8大排序算法图文讲解转
  4. requests 返回的cookies为空_爬虫学习(2)(requests库)
  5. 机器人无限火力无限e符文_LOL:无限火力开黑指南 三大玩法让你快乐加倍
  6. 转转转!java继承中的this和super
  7. Java虚拟机的什么周期
  8. C++ Copy Elision
  9. 面向对象(二) 继承/里氏替换
  10. (Windows7)Visual Studio 2017编译运行出现脚本错误的解决方法
  11. (三) OpenCV仿射变换与透射变换(Affine and Perspective Transform)
  12. RobotStudio碰撞检测的设定
  13. View组件之各xml属性
  14. binlog的基本介绍和操作
  15. SAS学习7(gpolt过程、gchart过程、图形输出、ods功能、假设检验,ttest过程,rank过程,秩和检验(非参数检验))
  16. 关于红外调制基础理解
  17. 从零开始部署Node.js服务至阿里云ECS服务器并通过express框架实现外网IP访问html项目
  18. UML中关系(4+4)
  19. MFC如何调用Flash控件
  20. 如何查看python安装了哪些模块_Python模块如何安装 并确认模块已经安装好?

热门文章

  1. 2022-2027年中国网上阅卷系统行业发展前景及投资战略咨询报告
  2. kubectl源码分析之drain
  3. python程序分析csv文件并绘制趋势图
  4. 深度学习入门基础:图像分类网络整理(最全)
  5. DHCP Relay 配置教程
  6. 加了尾注怎么添加新页_wps添加有尾注,随后删掉之后空白页怎么也不删掉?求大神帮忙...
  7. Jupyter Notebook打开出现“python.exe无法找到入口 无法定位程序输入点...动态链接库E:\Anaconda3\pythoncom36.dll上”
  8. 输入整形 matlab仿真
  9. zookeeper之ZkClient使用,java电子书阅读器开发
  10. 推荐一个不错的免费的asp空间