打地鼠游戏(2D)学习笔记

这篇博客详细记录了2D打地鼠游戏的制作流程,包括导入素材、分层、调整相机、生成洞口和地鼠、实现打击与计分功能、添加音效、重置游戏以及导出游戏等步骤。作者在实践中遇到并解决了逻辑错误,加深了对函数和UI操作的理解。
摘要由CSDN通过智能技术生成

打地鼠游戏(2D)学习笔记

制作流程

1. 导入素材、Sorting Layer(分层)和调整相机位置

分类建立文件夹,并导入如下素材:导入素材
为做到图层的覆盖,将图层进行分类
分层
Hole
调整相机位置
MainCamera

2. 生成洞口

将对象素材拖制成预制体后,编写脚本GameController部分内容:利用二位数组转化成一元数组生成洞口:

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

public class GameController : MonoBehaviour {
    public struct Hole {
        //地洞位置信息
        public int holeX;
        public int holeY;
    }
    public Hole[] holes;
    public float intervalPosX = 2, intervalPosY = 1;//地洞之间的横纵间隔设定
    public GameObject holeObj;
    public GameObject moleObj;
    
	// Use this for initialization
	void Start () {
        Initmap();
	}

    private void Initmap()
    {
        Vector2 originalPos = new Vector2(-2, -2);//初始地洞位置
        holes = new Hole[9];//利用二维数组转换成一维数组设定地洞,如holes[8]即第一个地洞=数组【2,3】
        for (int i = 0; i < 3; i++){
            for (int j = 0; j < 3; j++){
                holes[i * 3 + j] = new Hole();
                holes[i * 3 + j].holeX = (int)(originalPos.x + j * intervalPosX);
                holes[i * 3 + j].holeY = (int)(originalPos.y + i * intervalPosY);
                //生成地洞
                Instantiate(holeObj, new Vector3(holes[i * 3 + j].holeX, holes[i * 3 + j].holeY, 0), Quaternion.identity);
                //Quaternion四元数,表示旋转,可防止万向锁;Quaternion.identity表示默认初始旋转角度
            }
        }
    }

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

<
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值