自分が理解した範囲でのみお答えします。
(私より理解している方がいらっしゃいましたら、間違っている部分があればご指摘お願い致します)
Rigidbody2D.Castに関してのみお答えします。
まず「キャスト」という言葉の意味に関してですが、これは異なる意味が二つあります。
(厳密にはそれぞれ言葉が違う?)
一つは「ある型の値を別の型に変換(キャスト)する」という意味です。
例えば「文字列を数値に変換する、数値を文字列に変換する」というような事をする際に使います。
キャスト - DOBON.NET
二つ目はレイキャストを例えにするとわかりやすいと思います。(Rigidboy2D.Castのキャストとは異なります)
Unityのレイキャストとは何ぞや?(自分用)
レイキャストとはレイキャスティングともいいます。
レイキャストはなにをするのかというと、ある地点から特定の方向に向かって定めた距離分、透明の線を引き、その線上にあるColliderを検知する。という役割を持っています。
Rigidbody2D.Castはこの線を引く代わりに、Rigidbody2Dと同じオブジェクトにアタッチされているすべての2Dコライダーを受け取り、指定した方向にすべての2Dコライダーを投影してヒットした物を返します。
How does "Rigidbody2D.Cast()" works?
Basically it takes all the 2D colliders attached to the same object as your Rigid Body and projects them all forward in the direction you give and returns anything they hit. Think of it as asking "If I were to move in this direction what would I hit?". It's different from a regular raycast because it's actually using the Collider Shapes instead of just shooting a line.
そういう訳で、Rigidbody2D.Castのキャストは意味的には「投じる」であり、
使い方としては2D画面上で特定方向に何かあるかを調べたいときに使う。という感じだと思います。
ざっくりとした理解としてはおそらくこんな感じであっていると思います。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/14 22:39
2019/11/15 00:03