Version: 5.3 (switch to 5.4b)
IdiomaEnglish
  • C#
  • JS

Idioma de script

Selecciona tu lenguaje de programación favorito. Todos los fragmentos de código serán mostrados en este lenguaje.

Rigidbody.ClosestPointOnBounds

Sugiere un cambio

¡Éxito!

Gracias por ayudarnos a mejorar la calidad de la documentación de Unity. A pesar de que no podemos aceptar todas las sugerencias, leemos cada cambio propuesto por nuestros usuarios y actualizaremos los que sean aplicables.

Cerrar

No se puedo enviar

Por alguna razón su cambio sugerido no pudo ser enviado. Por favor <a>intente nuevamente</a> en unos minutos. Gracias por tomarse un tiempo para ayudarnos a mejorar la calidad de la documentación de Unity.

Cerrar

Cancelar

Cambiar al Manual
public function ClosestPointOnBounds(position: Vector3): Vector3;
public Vector3 ClosestPointOnBounds(Vector3 position);

Parámetros

Descripción

El punto más cercano al cubo delimitador de los Colliders adjuntos.

// Subtract damage from a character's hit points when an
// explosion occurs.
var hitPoints : float = 10.0;
var rb: Rigidbody;

function Start() { rb = GetComponent.<Rigidbody>(); }

function ApplyDamage(explosionPos : Vector3, radius : float) { // Find the distance from the explosion position to the surface of the rigidbody. var closestPoint : Vector3 = rb.ClosestPointOnBounds(explosionPos); var distance : float = Vector3.Distance(closestPoint, explosionPos);

// Calculate the damage we apply, decreasing with distance from the strike point. var damage : float = 1.0 - Mathf.Clamp01(distance / radius); damage *= 10; // Apply the damage hitPoints -= damage; }
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public float hitPoints = 10.0F; public Rigidbody rb; void Start() { rb = GetComponent<Rigidbody>(); } void ApplyDamage(Vector3 explosionPos, float radius) { Vector3 closestPoint = rb.ClosestPointOnBounds(explosionPos); float distance = Vector3.Distance(closestPoint, explosionPos); float damage = 1.0F - Mathf.Clamp01(distance / radius); damage *= 10; hitPoints -= damage; } }