IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> Unity2D小游戏之小白练手 ------- 黄金矿工 -> 正文阅读

[游戏开发]Unity2D小游戏之小白练手 ------- 黄金矿工

前期准备:

在Main Camera的 Inspector 视图中:

  1. 将Main Camera 的位置坐标全改为0;
  2. 将Camera ---- Projection 选中为 Orthographic. 【重点,一定要改,不然后面制作UI层有些组件位置不对】
    Orthographic — 正交摄像机
    Perspective — 符合近大远小的特征
    在这里插入图片描述

导入素材:

在 Assets 中建一个文件夹 Spite , 放入一些游戏中物体的各种图片素材。

在这里记录一个将几张图片合成一个短动画,达到一些物体亮闪闪的效果。
项目中,将如下diamond、Gold做成亮闪闪的效果。在这里插入图片描述
步骤如下:

  • 在 Assets 文件夹中 创建一个文件夹 Animator ,用于保存做好动画。
  • 选中物体相关的几张图片,然后按住鼠标拖至 Hierarchy 视图框中弹出电脑文件夹【如下图】,修改文件名,将地址改为 Animator ,点击“保存”。
    在这里插入图片描述
  • 这样便做好了 diamond 的动画,Gold 的做法同理。在Animator 中便会有着这些文件【如下图】在这里插入图片描述
  • 应用至游戏操作:首先将物体相关的任意一个素材拖进 Hierarchy ,然后为其添加 Animator 组件,然后将相应的动画拖进该组件的 Controller

    注:注意拖进Controller的文件不是你命名的那个文件,而是另一个对应的文件,这个要拖的文件名是这个物体相关的那几张图片中的任意一张的文件名。
    在这里插入图片描述
    这些调好之后就可以在游戏启动后看到亮闪闪的效果。

正式开始

游戏制作分为三层:背景层、UI层、游戏层,按这个顺序制作。
背景层:

  1. 在 Hierarchy 添加Canvas改名为BGCanvas、Image做背景。

将Canvas 的 一些Render Mode 改为 Screen Space - Camera将 Main Camera 拖进Render Camera 的框中,然后将 Plane Distance 改为5就足够了。
在这里插入图片描述

  1. 选中Image,点击其 位置如图,然后 Alt + 左键 将Image填充至整个背景Canvas上。然后将背景图片拖至Source Image处,或者按后面的那个按钮直接选择。
    在这里插入图片描述
    3D效果展示:
    在这里插入图片描述
    2D效果展示:
    在这里插入图片描述

UI层:
添加Canvas改名为UICanvas 、Text
将Text的大小、颜色、位置调整好,然后 Ctrl + D复制Text调整至合适位置,将各处的Text文本内容修改好。
注意:记得将 Text 的位置坐标 Z 改为与UICanvas层相同。
3D游戏环境展示:
3D

2D游戏环境展示:
在这里插入图片描述
游戏层: 用来控制游戏操作。

  1. 添加游戏元素–矿石:diamond、gold、rock、mouse,添加好一个后,该设置的设置好后,直接Ctrl+D 复制几个,然后调整一下各自的位置。
  2. 添加绳子与绳套:让绳子作为绳套的父节点。
  3. 因为游戏操作中有绳套与矿石之间的碰撞,因此需要给矿石与绳套添加用于碰撞检测的组件:Rigidbody 2D 与 Circle Collider 2D,然后修改Rigidbody 2D 中的Gravity Scale 为 0 (这个是重力,改为0,就不落下去) 、Cricle Collider 2D 勾选 Is Trigger 。
  4. 编写代码,挂载至相关的游戏组件上,运行游戏。
    C#脚本实现功能内容:
    【本人小白,代码编写能力一般,就简单描述一下代码需要实现的功能就行吧】
    1. CheckObject:用于绳套检测其是否抓到(碰到)矿石。如果抓到了就将该矿石作为子节点带回,绳子回收过程中,关闭碰撞检测,避免在抓到其他矿石。
    2. GameMange:
      (1)分别枚举绳子的三种状态:摇摆Rock,拉伸Stretch,缩回Shorten。实现三种状态:Rock() { 绳子在一定范围内旋转 } ; Stretch() { 绳子在检测到鼠标左键点击事件后,拉伸变长,变长有最长限制。其次,绳子拉伸变长,但是绳套不能随之一起拉伸 } ;Shorten() { 绳子拉伸变短即可。 }
      (2)游戏时间倒计时、加分:在绳子缩短时根据是否检测到绳套有子节点来确定是否加分以及销毁该子节点;每次得分的分数通过检测各个游戏元素的 tag 【这个需要自己在Unity中添加,给每个相关游戏元素选择上】来确定加多少分。

总结:这是很简单的项目,不复杂,刚跟着那视频做的时候,那视频也就一个小时多,看起来很快的样子,但是我硬是搞了一天,有些选项没选,后面的操作效果都有误差,有些操作我不会,连个视图怎么转都不知道,搞得自己半天都不知道该怎么调整。后面代码也有错,效果简直搞笑的离谱。现在也还没找出来bug,感觉我写的和人家一模一样哦。
又重头自己做一遍,第一遍自己检查错误的时候就已经把步骤记得差不多了【吐血】,但是还是忘了一个操作,所以也检查了几遍,不过最后一遍下来基本效果都已经实现了,和视频里的差不多了。接下来呢,就是要写过关、开始游戏的一些UI设置,说实话这个还没学到,都还没接触一个设置游戏开始到玩游戏的那个页面跳转设计,一个完整的游戏还差的很远。
这次做这个本来是打算就一天时间,给自己找找做游戏的信心与兴趣,结果搞得心态难受,不过还好每次被自己傻气的无语的时候都及时打开了浏览器搜寻解决方法,成功将自己心态拉回来一段。所以每次感觉自己不行了,就一定要努力冷静让自己调整心态去想如何解决这件事,还有一个,每次不行了,就想想要不放弃吧,那个时候你会得到某一瞬间的轻松愉悦,但那也就一瞬间,接着你只会想,你这就放弃了?好意思?还不如好好再重新看看检查一下。毕竟你还是个菜鸟,还是个学习的人,又不是创造的人,总有人会给你解决方法的。

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2021-08-26 12:27:12  更:2021-08-26 12:28:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/3 15:45:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码