Unity大神之路4:Roll A Ball 案例开发(完结)

大神之路:Roll A Ball

1:碰撞检测和触发检测
  • 三种不同状态下的碰撞检测的方法通过键盘来操控小球移动,使小球吃掉所有的食物
  • 因为吃掉食物就是碰到食物,食物就消失,所以我们使用OnCollisionEnter方法
  • 为了辨别出碰撞到的物体都是食物,所以给食物的预设添加一个标签(Tag)PickUp
    在这里插入图片描述
  • 因为小球在吃掉食物的时候与事物发生碰撞,所以会卡顿一下,为了避免,我们使用触发检测OnTriggerEnter
    //碰撞检测
void OnCollisionEnter(Collision collision//用来获取碰撞的信息,碰撞了那个物体,什么位置等等)
    {
        //collision.collider//获取碰撞到的物体身上的Collider组件
        //string name = collision.collider.name;//获取碰撞到的游戏物体的名字
        //print(name);//print可以把一个字符串输出到控制台
        if(collision.collider.tag == "PickUp")
        {
            Destroy(collision.collider.gameObject);//销毁碰撞到的食物
        }
    }
    //触发检测
    private void OnTriggerEnter(Collider collider)
    {
        if (collider.tag == "PickUp")
        {
           
            Destroy(collider.gameObject);
        }
    }

2:显示分数和胜利检测

①:在小球的脚本里定义私有变量Score去存储分数
②:在Hierarchy中创建一个UI->Text来显示分数,找到下面这个属性,按住ALT键,然后选中象征着左上角的方块,分数就会显示在左上角
③:创建一个新的Text用来提示胜利了!并使用代码在其吃完小球的时候激活。
在这里插入图片描述
在这里插入图片描述
核心代码:

	public Text text;//在小球身上定义Text组件,然后将创建的Text拖到组件里面

    public GameObject winText;//用来显示胜利了;

    private int score = 0;
    
private void OnTriggerEnter(Collider collider)
    {
        if (collider.tag == "PickUp")
        {
            score++;
            text.text = score.ToString();
            if (score == 10)
            {
                winText.SetActive(true);//激活用来显示胜利了的Text
            }

            Destroy(collider.gameObject);
        }
    }
3:游戏的发布

File–>Build Settings
在这里插入图片描述
将你游戏中所需要发布的场景拖到上方的空白框框中,然后选择你需要发布的平台,然后选择存储位置点击Bulid即可

游戏由应用程序和数据文件组成,缺一不可
在这里插入图片描述

4:结语

好的,我的第一个很简陋的小游戏制作完成,虽然是看教程来的,但是每一次的笔记都让我收获颇多,学习就是一个积累知识和动手操作的过程,所以,继续加油,我还会继续更新下一个小游戏的开发全程,一起加油!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值