Unity Oculus Vive Hololens など HMDのトラッキングを無効に...
...したいですね。僕にはわからないです笑 なので教えてくださる方がいるとありがたい。
擬似的にHMDを動かないようにする
設定でなにやらできそうな気もしますが、わからないものはわからないので、トラッキングによる移動分を相殺することで、擬似的に動かないように見せることは可能です。
手順
1.MainCamera を新たに作った GameObject の子オブジェクトにする。
2.Update 内で UnityEngine.VR 内の InputTracking.GetLocalPosition(VRNode)により、HMDの座標を取得。
3.固定したい座標を真ん中として、2で取得したHMDの移動分を先ほど作った親オブジェクトに移動してもらう。
(例として、原点座標に固定しておきたいのなら、取得したVector3の値に-1をかけたものを親オブジェクトのpositionに設定する。)
おすすめは、親オブジェクトを固定したいポイントに置き、カメラはローカルで 0, 0, 0の座標に。あとはstart時に親のポジションを記憶し、カメラが移動した分を取得し、"親の最初の座標+毎回取得したHMD値*-1" を親のpositionに上書きしていけばうまく相殺できるはずです。
//Update内 positionParent.transform.position = ( -1 * InputTracking.GetLocalPosition (VRNode.CenterEye) );
今回はたまたま原点に固定だったので、毎回-1をかけたものをそのまま使用しております。この値に任意のポジションを足してやれば、自分で指定したワールド座標にHMDを持っていくことができます。
回転も似たような手法で解決可能ですが、首の位置を固定する出番はHMDではさすがにないと思うので省略。
Hololens カーソルがUIの後ろに表示される GUIの描画順
上の写真は真ん中に丸いカーソルが表示されています。もちろん、これはHololensで正面に表示される選択カーソルですよ。では、下の写真をみてください。
こちらは、見えにくいですが、Buttonの後ろに隠れてしまっています。スクリプト的にはしっかりUIの当たり判定の前にカーソルを表示することになっているのですが。
unityの描画順
こちらのサイトさんで勉強させてもらいました。なんとなく知ってはいたものの、実際に問題に直面した際に正確な描画順がわかるのはありがたいです。以下印象含みます。
-
-
- ヒエラルキー内、同じ親オブジェクト内での描画順---
-
これは上にあるオブジェクト順に描画されていきます。これはおそらくほとんどの方が経験しているでしょう。
-
-
- その他設定により決まる描画順(一部引用)---
-
Render Mode
CanvasのRender ModeがOverlayのものがCameraとWorldのものより必ず手前に表示されます。
CameraのDepth
Render ModeがOverlay以外のものでの組み合わせの場合、設定されているCameraのDpethが大きいものが手前に表示されます。
Sorting Layer
Render Modeが同一、もしくはCameraとWorldの組み合わせの場合はSorting Layerの下のものを選択しているCanvasがより手前に表示されます。
Order in Layer
Sorting Layerも一緒の場合は、Order in Layerが大きいものが手前に表示されます。
Plane Distance
Render ModeがCameraで、かつ同じカメラが設定されている場合にPlane Distanceの値が小さいものが手前に表示されます。
引用終わりーー
僕の場合は、カメラのorder in layerが悪さをしていました。
hololensのアプリを作っているとだいたいこの辺りで一旦止まりそう笑
以上。
Mac 黒背景の時のカーソル(Iビーム)が見えにくい
Macのマウスカーソルを見やすくする(とくにテキスト入力用のIビーム) – Lifelog
僕はvisual studio, IntelliJ等エディターは基本的に全て黒背景を好んでおります。特にvisual studioはスタイルを自分で作れるため、背景は真っ黒になっています笑
しかし、MacのIビームってかなり黒いですよね。正直よく見失っていました。。これを解決してくれるのが上のURLで紹介されているMousecapeというアプリ!使い方などは書いてくれているので書きませんが、少なくとも僕はIビームという呼び名を知らなかったので、これが知ることができただけで、仮にリンク先のサイトさんがなくなってしまってもなんとかググって対処できそうです。感謝です!
Mac 黒背景の時のカーソルが見えにくい
Macのマウスカーソルを見やすくする(とくにテキスト入力用のIビーム) – Lifelog
僕はvisual studio, IntelliJ等エディターは基本的に全て黒背景を好んでおります。特にvisual studioはスタイルを自分で作れるため、背景は真っ黒になっています笑
しかし、MacのIカーソルってかなり黒いですよね。正直よく見失っていました。。これを解決してくれるのが上のURLで紹介されているMousecapeというアプリ!使い方などは書いてくれているので書きませんが、少なくとも僕はIカーソルという呼び名を知らなかったので、これが知ることができただけで、仮にリンク先のサイトさんがなくなってしまってもなんとかググって対処できそうです。感謝です!