衝突したオブジェクトのコライダー情報
衝突したオブジェクトがひとつ以上のコライダーがある場合に役に立ちます。このプロパティーを使用して、オブジェクトだけでなく特定のコライダーを判定できます。
RaycastHit2D を返すいくつかの関数はコライダーを Null としたままにすることに注意してください。これは何も衝突してないことを示します。RaycastHit2D は明示的な変換の演算子を実装しているため、このプロパティーをチェックして衝突があったかどうかを boolean で返します。
#pragma strict
//Attach this script to an empty gameobject.
//When you click on a sprite with a collider it will tell you it's name.
function Update() {
//If the left mouse button is clicked.
if (Input.GetMouseButtonDown(0)) {
//Get the mouse position on the screen and send a raycast into the game world from that position.
var worldPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition);
var hit = Physics2D.Raycast(worldPoint, Vector2.zero);
//If something was hit, the RaycastHit2D.collider will not be null.
if (hit.collider != null) {
Debug.Log(hit.collider.name);
}
}
}
using UnityEngine; using System.Collections;
//Attach this script to an empty gameobject. //When you click on a sprite with a collider it will tell you it's name. public class ExampleClass : MonoBehaviour { void Update() { //If the left mouse button is clicked. if (Input.GetMouseButtonDown(0)) { //Get the mouse position on the screen and send a raycast into the game world from that position. Vector2 worldPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition); RaycastHit2D hit = Physics2D.Raycast(worldPoint,Vector2.zero);
//If something was hit, the RaycastHit2D.collider will not be null. if ( hit.collider != null ) { Debug.Log( hit.collider.name ); } } } }