摇头侠之战2

                                           摇头侠之战2

1.添加关节,给关节施加外力脚本
在这里插入图片描述
当SpaceMarine移动的时候,就给其头盔一个外力让头盔摆动。首先,判断了移动方向,如果移动方向等于Vector3.zero,则表示SpaceMarine是静止的。“AddForce()”方法就是施加外力的方法,它的参数决定了外力的方向和大小。
有好几种力的类型,Acceleration类型表示持续加速的力,忽略掉物体质量大小。
2.运行游戏
单击菜单栏“Edit”按钮,在打开的菜单中选择“Project Settings”→“ Physics”命令,在各个层之间影响关系的矩阵中,取消勾选Player行和Head列的交叉处的复选框
在这里插入图片描述
3.实现发射射线代码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

射线Ray是不可见的,导致不容易调试,需要确确实实的看见射线和GameObject相交
4.实现SpaceMarine根据鼠标位置旋转
在这里插入图片描述
第一行代码定义了目标位置,Y轴的值是SpaceMarine自身Y轴的值,这样SpaceMarine面对的位置的高度就不会变化,如果直接赋值相交的位置,那么SpaceMarine面对的位置就是有一定角度看到地面上去了。
第二行代码根据目标位置和SpaceMarine自身位置计算出旋转(Rotation)。
第三行代码使用插值算法让SpaceMarine平滑地从当前角度(Rotation)旋转到目标角度(Rotation)。
5.创建GameManager
在这里插入图片描述
会被赋值为SpaceMarine游戏对象,GameManager会使用player获取SpaceMarine的位置。
spawnPoints:表示Alien批量生成的地方,将其定义为数组,是因为生成Alien的位置有多个。
alien:会被赋值为Alien预制体(Prefab),GameManager会根据该预制体创建Alien的实例。

定义的这些变量用来做游戏配置:
在这里插入图片描述
添加一些私有变量来给GameManager记录数据使用
在这里插入图片描述
6.实现生产Alien的逻辑
在这里插入图片描述
使用一个for循环,按照批准生的数量,一个一个地开始准备生产Alien。首先判断一下当前的Alien数量不大于最大值。开始生产之前,“aliensOnScreen”的数量加一个 spawnPoint是一个数组的下标,范围应该是“0”到数组长度减去“1”,初始化为“-1”。意思是要从一堆生成位置里面随机挑选一个位置来生成Alien。. 这个while循环会一直持续直到生成一个随机数赋值给spawnPoint,使其不再等于“-1”。. 生成一个随机数。 判断生成的这个随机数是不是刚才已经生成过了,如果是一个新的随机数,将其添加到数组里面,并将其赋值给spawnPoint。现在有了生成Alien的位置
实例化GameObject
在这里插入图片描述
7.设置代理的目标
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这两行代码使用Alien的Y轴的位置,来作为其面对的方向的位置,以防止SpaceMarine太高或者太矮时,Alien仰头朝天看,或者低头往地下看。
8.实现Alien死亡
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值