Unity勇者の冒険の書

Unityで学んだことや便利なものなど作ったら紹介します

【Unity勇者の奮闘記】HtcVIVEでフェードする方法

今回のUnityのバージョン:5.4.3f1

こんにちは!

お久しぶりです。

最近VRで開発することが多いので、VIVEの開発に関する事を
ちょこちょこ書いていきたいと思います。

まずはHtcVIVEで画面をフェードする方法について書きます。
まず、前提としてプロジェクトに「SteamVR Plugin」
を使っていることが条件です。

・SteamVR Plugin
https://www.assetstore.unity3d.com/jp/#!/content/32647

この中にあるスクリプト「SteamVR_Fade」
[CameraRig]Camera(head)Camera(eye)にアタッチします。

f:id:LightGive:20170411124544p:plain

f:id:LightGive:20170411124547p:plain

フェードさせるときはGetComponentなどせずに、
Staticの関数を呼ぶだけで大丈夫です。

[SerializeField]
private Color fadeColor = Color.black;
[SerializeField]
private Color fadeTime = 1.0f;

void Start()
{
    SteamVR_Fade.Start(fadeColor, fadeTime);
}

こんな感じで超簡単に実装できるので、ぜひ試してみてください。

応用でこんなこともできます。

qiita.com


ちなみに、フェードするシーン遷移に関しては「SteamVR_LoadLevel」というスクリプトが用意されています。

使い方はこんな感じです。

void Start()
{
    SteamVR_LoadLevel.Begin("シーン名");
}


あら便利。

こんな感じでHtcVIVEの開発ではいろいろな機能が
「SteamVR Plugin」で既に作られていたり、
「VRTK」「NewtonVR」という便利なAssetがあったりするので、
意外とVRの開発は簡単だったりします。


物を持って投げるだけならVRTKを使えば数秒で出来ます!
学生の方なら学校に機材があったりすると思うので、
是非開発を試してみてはどうでしょうか?


アセットのリンク貼っておきますね。

・VRTK
https://www.assetstore.unity3d.com/jp/#!/content/64131

・NewtonVR
https://www.assetstore.unity3d.com/jp/#!/content/75712

では!