- 最后登录
- 2021-7-6
- 注册时间
- 2012-12-27
- 阅读权限
- 90
- 积分
- 76145
- 纳金币
- 53488
- 精华
- 316
|
//到附加的碰撞器边界框上的最近点。
//这可以用来计算受到爆炸伤害时的伤害点数。或计算作用到刚体表面上一个点的爆炸力。
var hitPoints : float = 10.0;
function ApplyHitPoints (explosionPos : Vector3, radius : float) {
// The distance from the explosion position to the surface of the rigidbody
//从爆炸位置到刚体表面的距离
var closestPoint : Vector3 = rigidbody.ClosestPointOnBounds(explosionPos);
var distance : float = Vector3.Distance(closestPoint, explosionPos);
// The hit points we apply fall decrease with distance from the hit point
//伤害点数随着到伤害的距离而降低
var damage : float = 1.0 - Mathf.Clamp01(distance / radius);
// This is the final hitpoints we want to apply. 10 at maximum.
//这是我们要用的最终伤害点数。
damage *= 10;
// Apply the damage
//应用伤害
hitPoints -= damage;
} |
|