現在、Unityで半球状のオブジェクトの中に以下ジャイロスクリプトをアタッチしたVRカメラを置き、スマホの動きに合わせてグリグリ動かす、という開発を行なっています。ちなみに半球状のオブジェクトの内側には魚眼カメラで撮った動画をビデオプレイヤーでアタッチしています。
今現在改善したいこととして、VRカメラが半球の外を映してしまうと雰囲気が台無しなので、半球の外を向かないように回転する角度に制限を設けたいと思っています。
また、シーンの開始時はカメラが向いている方向を(x,y,z)=(0,0,0)みたく任意で指定した状態でスタートさせたいです。ある程度調べて、this.transform.localRotationの部分を変更すれば良いのかとは思ったのですが、具体的な解決策がわかりません。
以下スクリプトを加筆or修正する形でご教授いただければ幸いです。
using UnityEngine;
using System.Collections;
public class GyroScript1 : MonoBehaviour {
Quaternion currentGyro; void Start(){ Input.gyro.enabled = true; } void Update () { currentGyro = Input.gyro.attitude; this.transform.localRotation = Quaternion.Euler(90, 0, 0) * ( new Quaternion (-currentGyro.x, -currentGyro.y, currentGyro.z, currentGyro.w)); }
}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。