晴れ時々Unity、そののち映画Unityを使ったモバイルアプリ制作をはじめてみた、私の制作奮闘記。ジャイロの動きでカメラを回転!さてようやく本番。なんか準備ばっかり、いっつも長いですよね〜。ジャイロの実装いってみましょうか!その前に地球モデルのアップグレードさて、いきなり話しが変わっちゃいました。実は、アセットストアを見てみたら、なんかいい感じの地球モデルが無料で置いてあったんですよね♪なんで、ちょっとダウンロードして、差し替えてみたいと思います。興味があれば、ここから見てみてくださいね。このパッケージは4種類の解像度のプレファブを含んでいるんで、それぞれの環境や見え方に合った解像度を選べばいいと思います。機能を使ってるみたいだけど、自分の環境だと調整してもいい感じで出ないんだなぁ〜。なんで、コレは非表示にして使わない事にしますね。プレファブでこんだけいけます。本番のジャイロでカメラ回転の対応!では本命のジャイロ機能ですね!一応前にテストでちゃんと動いてるからちょっと油断してるけど、どうかな?大丈夫!ま、今回も100%と言い切れないけど、ちゃんと動いてますね!!通常の3Dカメラにくっ付いてるスコアとかゲームオーバーテキストとかも回っちゃってますが、コレは後で直しますね^^;さて、実はそれ以上の問題があって...デバイスの向きなんですが、どうも起動時の姿勢を基に計算されてるみたいで、Unityが提供してくれるオイラー角の情報だけ見てると、変な体制でゲーム起動された時に、今のやり方だと、傾きが正しく取れないみたいなんですよね。なんで、前にやってたクォータニオンからオイラー角の情報を取ってくるやり方から変えてみますね。デバイスの傾き計算の改良さて、なんかいろいろトライ&エラーの繰り返しやリサーチをして、結構時間掛かっちゃったんですが、結局の所、角度の情報をヨー・ピッチ・ロール形式のオイラー角の情報にしないと駄目みたいです。とっても役立つ情報を見つけて実装の役に立ちました。具体的には、クォータニオンから、ヨー・ピッチ・ロール形式のオイラー角に変換する式を書いてくれてたんですよね。実装したスクリプトはこんな感じ!ヨー・ピッチ・ロール形式の角度を求める所は、さっき参考にしたサイトの式をそのまんまですね^^;その後はちょっと自分なりの改良がしてありますが、デバイスを持った時の画面上側の傾き具合によって、得られるロール角の値が違ってくる、もっと具体的に言うと、デバイスが寝た状態だと、入ってくるロール角が小さくなるんで、デバイスの状態によって検出する基準値を変えて、操作感が変わらない様に一応努力!じゃ、確認してみましょうね。!?これでどんなユーザーがどんな向きに向いてても、ちゃんとZ向きの回転だけ取れてますよね?床向きに近い向きでも、天井向いてても、ちゃんと角度、みれてますよね?ちなみに、参考値はこんな感じ。なんか、このハンドル操作みたいなのって、結構みんな使ってると思ったのに、なんか全然資料が見当たらないんですね〜。こんなに苦労するのは想定外でした!!もう、簡単過ぎて、書くまでもないって事なのかな〜?初めてみました。-若いっていいなぁ〜。2.0Seesaaブログ。