Unity|小游戏复刻|见缝插针1(C#)

准备
  1. 创建Scenes场景,Scripts脚本,Prefabs预制体文件夹
修改背景颜色
  1. 选中Main Camera

  2. 找到背景

  3. 选择颜色,一种白中透黄的颜色

创建小球
  1. 将文件夹里的Circle拖入层级里

  2. 选中Circle,位置为左右居中,偏上,颜色为黑色,大小缩为0.7

分数
  1. 创建Text

  2. 删除掉EventSystem,因为本例中UI不需要做任何事件

  3. 选中Text,点击重置,文本居中,颜色为白色,内容为0

  1. 选中Canvas,将渲染模式改为世界空间,接着修改大小,改为100.100
  1. 将缩放改为0.01,拖动到小球上

  2. 使得Circle和Canvas的位置坐标一致,都为0,2,0

  3. 选择MainCamera设置为Canvas的事件摄像机

小球运动
  1. 创建一个脚本,选择MonoBehaviour,命名为RotateSelf

  2. 将此脚本挂载到Circle的下面

  3. 编写脚本

c# 复制代码
using JetBrains.Annotations;
using UnityEngine;

public class NewMonoBehaviourScript : MonoBehaviour
{
    public float speed = 90;

    // Start is called once before the first execution of Update after the MonoBehaviour is created
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        transform.Rotate(new Vector3(0, 0, speed * Time.deltaTime));
    }
}
  1. 在场景中点击播放,可以看到Circle在逆时针旋转,如果想要顺时针旋转,在speed前加一个负号
针头
  1. 将针导入到层级里,将Pin的大小适当放大
  1. 制作针的尾部,复制一个Circle

  2. 调整大小位置颜色

  1. 将Pin拖入Prefabs文件夹里,方便进行实例化创建

  2. 给针头添加碰撞器,选中针头,在检查器底下的添加组件,搜Circle Collider 2D添加

生成针
  1. 创建两个空对象,将第一个命名为StartPosition

  2. 将Pin放到StartPosition的下面,这样可以进行预览,调整位置

  1. 将StartPosition复制,拖到屏幕外面进行实例化
  1. 然后删去针,改名为SpawnPositon

  2. 创建一个空对象,命名为GameManager

  3. 创建一个GameManager脚本,挂载到对象下面

c# 复制代码
using UnityEngine;

public class GameManager : MonoBehaviour
{
    private Transform startPosition;
    private Transform spawnPosition;

    public GameObject pinPrefab;

    // Start is called once before the first execution of Update after the MonoBehaviour is created
    void Start()
    {
        startPosition = GameObject.Find("StartPosition").transform;
        spawnPosition = GameObject.Find("SpawnPosition").transform;
        SpawnPin();
    }

    // Update is called once per frame
    void Update()
    {
        
    }

    void SpawnPin()
    {
        GameObject.Instantiate(pinPrefab, spawnPosition.position, pinPrefab.transform.rotation);
    }
}
  1. 将PIn实例拖到右边的Pin Prefab里

  2. 点击运行后屏幕外生成了针

相关推荐
林川~011 小时前
Unity新输入系统使用笔记
unity·input system
小贺儿开发8 小时前
Unity 结合百度AI开放平台 手写文字识别
人工智能·科技·学习·unity·云服务·文字识别·手写文字
林川~0121 小时前
Unity 万能物理检测工具:射线检测 / 范围检测 / 层级过滤 / 编辑器可视化(可直接拿去用)
游戏·unity·c#·射线检测·通用工具
yi碗汤园1 天前
MQTT消息队列遥测传输协议
网络·网络协议·unity
林川~011 天前
Unity 常用 API 与核心类全解:从生命周期到协程,附性能避坑清单(Unity 6 适配)
unity·游戏引擎·常用api
sensen_kiss1 天前
CPT306 Coursework 1 个人游戏作业——坦克大战
unity·游戏程序·游戏策划
蒸鱼Yuzheng1 天前
Unity 与 Unreal 测试工具怎么回答:Profiler、日志、自动化与证据链
测试工具·unity·性能分析·游戏测试·unrealengine
野区捕龙为宠1 天前
Unity WebGL平台 通过 URL 加载图片(UGUI RawImage / 模型材质)
unity·团结引擎
阿松爱学习2 天前
【Unity开发】FileStream 详解及用法指南
unity·c#·unity开发
想做后端的前端2 天前
Unity-UIGI优化Rebatch与Rebuild
unity