Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

Physics2D.GetRayIntersectionNonAlloc

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える
public static function GetRayIntersectionNonAlloc(ray: Ray, results: RaycastHit2D[], distance: float = Mathf.Infinity, layerMask: int = DefaultRaycastLayers): int;
public static int GetRayIntersectionNonAlloc(Ray ray, RaycastHit2D[] results, float distance = Mathf.Infinity, int layerMask = DefaultRaycastLayers);

パラメーター

ray テストすべき Ray を定義づける原点と方向
distance Raycast を行う最大距離
layerMask 特定レイヤーのみのコライダーを検知するフィルター
results 結果を受け取る配列

戻り値

int 投げかけた結果が返されます。

説明

シーン上のコライダーに対して 3D の Raycast をして、ヒットするすべてのコライダーをすべて返します

これは任意の 3D の Raycast と交差するコライダーを見つけるのに役に立ちます。

この関数は結果が配列に返されること以外は GetRayIntersectionAll 関数と同様です。返される int 値は円形と交わるオブジェクトの数です( 0 の可能性もあります)が、オブジェクトの数が配列よりも多くとも配列の長さが変わることはありません。この仕様について重要なのは、結果に対してメモリが割り当てられないため頻繁に実行された場合にガベージコレクションのパフォーマンスが向上するということです。コライダーはレイの始点からの距離順で並べられます。

さらにこの関数は 3D 交差テストであるため RaycastHit2D で返された任意の衝突の法線は 0 となります。