3d学习笔记(五)——打飞碟小游戏改进

作业与练习

1、改进飞碟(Hit UFO)游戏:

  • 游戏内容要求:
    1、按 adapter模式 设计图修改飞碟游戏
    使它同时支持物理运动与运动学(变换)运动
    2、打靶游戏(可选作业):

  • 游戏内容要求:
    靶对象为 5 环,按环计分;
    箭对象,射中后要插在靶上
    增强要求:射中后,箭对象产生颤抖效果,到下一次射击 或 1秒以后
    游戏仅一轮,无限 trials;
    增强要求:添加一个风向和强度标志,提高难度

实践内容

  • 根据要求,在上周的代码的基础上进行修改,上周的代码情况在上篇博客中可知

最新的游戏效果图

  • 飞碟出现
    这里写图片描述
  • 打中飞碟
    这里写图片描述

改进的地方

  • 增加了飞碟的重力属性
    这里写图片描述
  • 修改了飞碟的运动轨迹(从摄像头的后方往前抛出)
// 随机生成起始点和终点
        Vector3 starttPos = new Vector3(
              UnityEngine.Random.Range(-10,10),
              UnityEngine.Random.Range(0,20),
              -10
             );

        gameObj.transform.position = starttPos;

        Vector3 randomTarget = new Vector3(
              UnityEngine.Random.Range(-10, 10),
              UnityEngine.Random.Range(-10, 10),
              20
             );

        MoveToAction action = MoveToAction.getAction(randomTarget, gameObj.GetComponent<DiskData>().speed);
  • 增加了打中飞碟后的粒子效果
    这里写图片描述
    这里写图片描述
    这里写图片描述
    其实就是在预制当中加入了一个粒子控制器,再由以下代码调用,具体放置地方根据所需决定
GameObject explosion;
explosion = Instantiate(Resources.Load("Prefabs/ParticleSys"), new Vector3(-40, 0, 0), Quaternion.identity) as GameObject;
explosion.transform.position = hit.collider.gameObject.transform.position;
explosion.GetComponent<Renderer>().material = hit.collider.gameObject.GetComponent<Renderer>().material;
explosion.GetComponent<ParticleSystem>().Play();

以上即是本次作业的内容

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值