30天轻松学会unity自制游戏-往前移动

用最简单的方式Ctrl+C&Ctrl+V把场景往上延伸,Ctrl+D也可以直接复制此物件,看要制作多长远的关卡跟内容就自行设定罗~(每一个场景间隔Y为12),此篇先用之前子弹一样的往上方式,如想改变不同的关卡模式都可以尝试看看(有背景移动方式或摄影机跟随方式…等)
https://ithelp.ithome.com.tw/upload/images/20210915/20140598wzoQeY7Msx.png
复制一些背景,可以把统一的背景放在同一个空物件里(Create Empty)暂时取名Bg
https://ithelp.ithome.com.tw/upload/images/20210915/20140598uHFQRtgagy.png
多加一个往上移动在Player程序里面

    private void Update()
    {
        horizontalMove = Input.GetAxisRaw("Horizontal");
        transform.Translate(Vector3.up * 1 * Time.deltaTime, Space.World);
    }

在Main Camera里面也加装一个程序,暂定名称为CameraUp此程序只是让摄影机能跟Player一样的速率向上移动(如果会写程序或想尝试改变的人,也可以让Player修改成可上下左右移动,空气墙就放在摄影机上,增加上下的空气墙不让Player跑出摄影机外)
https://ithelp.ithome.com.tw/upload/images/20210915/20140598FIIsUX3Q2t.png

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

public class CameraUp : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        transform.Translate(Vector3.up *1 * Time.deltaTime, Space.World);
    }
}

现在会发生一个小问题,当Player碰撞到敌机的主体时会发生碰撞,碰撞後敌机跟Player都可能偏移角度跟接受到不同方向的推力,这不会是我们希望发生的碰撞
https://ithelp.ithome.com.tw/upload/images/20210915/20140598ffHktmnD5x.png
要让物体碰撞後不改变某些角度可以在刚体Rigidbody里面的Constraints里面有XYZ三轴的角度,打勾後可以锁定此轴角度不会改变,但现在碰撞到还是有不同的推力,这游戏就先把Enemy敌机碰撞器的isTrigger打勾,先不要碰触到即可
https://ithelp.ithome.com.tw/upload/images/20210915/20140598E5B6KjkVaW.png


<<:  Day15 - WooCommerce 金流串接实战

>>:  [前端暴龙机,Vue2.x 进化 Vue3 ] Day6. 模板语法

Day14 突如其来的Minecraft

通常有玩过线上游戏的工程师都会有个小小的梦想,是自己能架个私服跟朋友们一起玩乐,前阵子因为疫情的缘故...

Day 29 关於结对编程

关於结对编程 通常大家对结对编程 ( Pair Programming )的了解就是两个人一起写 C...

Day8 单纯贝氏分类器 (Naive Bayes Classifier)

什麽是单纯贝氏分类器? 讲人话就是在有些特徵之间相互独立且不影响的前提下,利用贝式定理算出个别特徵与...

终章 - 资安碎碎念与心得

终章 - 资安碎碎念与心得 其实原本还有很多想打的鬼故事, 但碍於尺度与很难去识别化,最後还是觉得不...

Jetpack Compose - Stateful and Stateless

相较於传统的 Android View,Jetpack Compose 在 Android 开发上还...