【发布时间】:2020-02-20 20:05:08
【问题描述】:
在我的塔防游戏中,我有一把激光枪,它有一个目标。
当它射击时,它总是击中它的目标——到目前为止一切都很好。
但我希望光束穿过敌人(目标)并可能击中它后面的其他敌人 - 所以我试图弄清楚如何计算 lineRenderer 的端点,因为它是起点,目标 -点和光束的长度,使其直接穿过目标 - 但仍然只能使用 2 个点,即起点和终点。
我认为这是关于在我的塔周围成像一个球体 sin/cos/pi 并扩展半径..?
【问题讨论】:
在我的塔防游戏中,我有一把激光枪,它有一个目标。
当它射击时,它总是击中它的目标——到目前为止一切都很好。
但我希望光束穿过敌人(目标)并可能击中它后面的其他敌人 - 所以我试图弄清楚如何计算 lineRenderer 的端点,因为它是起点,目标 -点和光束的长度,使其直接穿过目标 - 但仍然只能使用 2 个点,即起点和终点。
我认为这是关于在我的塔周围成像一个球体 sin/cos/pi 并扩展半径..?
【问题讨论】:
所以,我发现了自己——使用 Vector3:
Vector3 direction = (target.position - firePoint.position);
Vector3 endPoint = firePoint.position +
(direction.normalized * tower.targetRange);
laserBeam.SetPosition(0, firePoint.position);
laserBeam.SetPosition(1, endPoint);
【讨论】: