今天实现的内容:
子弹碰撞检测逻辑
子弹类,子弹类目前只做运动,碰撞检测和冲击特效/音效的处理,运动采用直接修改transform的方式,没有下坠弹道效果。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace Scripts.Weapon
{
// 没有基于物理的子弹
public class Bullet : MonoBehaviour
{
// 子弹速度
public float bulletSpeed;
// 子弹的冲击预制体 主要是冲击粒子特效
public GameObject impactPrefab;
// 子弹冲击音效
public ImpactAudioData impactAudioData;
// 子弹的Transform引用 专门给this.transform取个别名罢了
private Transform bulletTransform;
// 子弹上一帧的位置 用于碰撞的射线检测
private Vector3 prevPosition;
private void Start()
{
bulletTransform = transform;
prevPosition = bulletTransform.position;
}
private void Update()
{
// 无下坠效果
bulletTransform.Translate(0, 0, bulletSpeed