raycastの始点をカメラではなくオブジェクトにしたい
unityとOculusでVRゲームを制作しています。
その中でオブジェクトからraycastを飛ばして、衝突判定をおこないたいです。
ネットで調べていると、
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
というカメラからマウスのポイントの位置へrayを飛ばすのが基本のようです。
これをあるオブジェクトを視点にして、Oculusのコントローラーでryを飛ばすことは可能でしょうか。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
private void Update () { //メインカメラ上のマウスカーソルのある位置からRayを飛ばす Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; //レイヤーマスク作成 int layerMask = LayerMaskNo.CORGI + LayerMaskNo.SHIBA; //Rayの長さ float maxDistance = 10; if (Physics.Raycast(ray, out hit, maxDistance, layerMask)){ //Rayが当たるオブジェクトがあった場合はそのオブジェクト名をログに表示 Debug.Log(hit.collider.gameObject.name); } //Rayを画面に表示 Debug.DrawRay(ray.origin, ray.direction * maxDistance, Color.green, 5, false); }
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。

回答1件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
また依頼した内容が修正された場合は、修正依頼を取り消すようにしましょう。
2020/01/14 04:30