Rigidbody.ClosestPointOnBounds 到边界框的最近点

//到附加的碰撞器边界框上的最近点。

//这可以用来计算受到爆炸伤害时的伤害点数。或计算作用到刚体表面上一个点的爆炸力。

 
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;
}
 
 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值