
MagicShield.png

MagicShield3.gif

MagicShield.gif
C#脚本代码(需要导入DOTween插件):
这个脚本用于监听检测球体的射线碰撞事件,然后把碰撞的点存到数组里传给shader
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using DG.Tweening;
public class MagicShield : MonoBehaviour {
public Material shieldMaterial;
public int pointsCount = 20;
public float pointRange = 0.5f;
public float inTime = 0.5f;
public float outTime = 0.5f;
public Ease ease;
public List<HitPoint> hitPoints = new List<HitPoint>();
public List<Vector4> vecArray = new List<Vector4>();
void Start () {
for (int i = 0; i <