2020年03月17日
【Unity】ViewportPointToRay()とはなんなのか
ViewportPointToRay() とは
ViewportPointToRay()とは、正規化されたビューポート座標を
もとにRayを計算する関数です。
説明終わり。
分かる訳がない
公式リファレンスにはそんな感じで記述されていますが、
正直、何がなんだか分かりません。
まずビューポート座標が曖昧です...。
そこから知る必要がありそうです。
ビューポート座標
調べてみましたが、どうやらUnity専用の用語?っぽいです。
複数の
カメラの視界を基準にした座標系らしいです。
カメラ左下の座標が(0, 0)、右上が(1, 1)となるようです。

なので、画面中央を指定する場合のビューポート座標は(0.5, 0.5)となります。
結論、ViewportPointToRay() とは
画面左下の座標を(0, 0)、右上を(1, 1)としたときの
座標に合わせて、その座標からRayを計算する関数だということです。
使用例 画面中央からRayを飛ばしてみる
void Update () {
RaycastHit hit;
var ray = Camera.main.ViewportPointToRay(new Vector2(0.5f, 0.5f));
if (Physics.Raycast(ray, out hit)) {
// ray処理
}
}
以上です!
閲覧ありがとうございました。
【このカテゴリーの最新記事】
-
no image
-
no image
-
no image
-
no image
この記事へのトラックバックURL
https://fanblogs.jp/tb/9709184
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック
※ ブログに表示されるのは、主の承認が必要なので時間がかかります!
コメントに気づかない場合もありますので、返信が遅れる場合も...