ヒットしたコライダーのRigidbody。コライダーにRigidbodyがアタッチされていない場合は null になります。
// Apply a force to a clicked rigidbody object.
// The force applied to an object when hit.
var hitForce: float;
function Update() {
if (Input.GetMouseButtonDown(0)) {
var hit: RaycastHit;
var ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray, hit)) {
if (hit.rigidbody != null)
hit.rigidbody.AddForce(ray.direction * hitForce);
}
}
}
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { public float hitForce; void Update() { if (Input.GetMouseButtonDown(0)) { RaycastHit hit; Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(ray, out hit)) if (hit.rigidbody != null) hit.rigidbody.AddForce(ray.direction * hitForce); } } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): public hitForce as float def Update() as void: if Input.GetMouseButtonDown(0): hit as RaycastHit ray as Ray = Camera.main.ScreenPointToRay(Input.mousePosition) if Physics.Raycast(ray, ): if hit.rigidbody != null: hit.rigidbody.AddForce((ray.direction * hitForce))
See Also: Physics.Raycast, Physics.Linecast, Physics.RaycastAll.