2016-12-26 5 views
0

Unity3dで、あるシーンから別のシーンに移動するときに画面の向きを変更する必要のあるAndroidアプリを開発しようとしています。Unity3dスクリーン。シーンの初期化時に画面が回転しないようにする

私は最初のシーンに添付スクリプトにこのコードを追加しました:

void Start() 
{ 
    Screen.orientation = ScreenOrientation.Portrait; 
} 

そして、これは、第二のシーンに添付されています

void Start() 
{ 
    Screen.orientation = ScreenOrientation.Landscape; 
} 

私は、これは画面を強制すべきであることを前提としてい回転して指定された回転を維持する。しかし、シーン1からシーン2に移動すると、シーンの初期化にオリエンテーションが強制されず、最初のシーンから2番目のシーンに切り替えると、移動しない限り、画面は縦向きにとどまりますデバイス。デバイスを任意の方向に動かすと、画面は横向きに変わり、横向きにロックされたままになります。 何らかの理由で、シーン2からシーン1に移動する場合は適用されません。前回の回転に関係なく、画面は適切に回転します。第2シーンのUIは風景モードで表示されるように設計されており、シーンを変更しようとするたびにデバイスを移動するのは不便です。私は何かを逃しているのですか、これはバグですか?

答えて

3

使用LandscapeLeftまたはLandscapeRight代わり

https://docs.unity3d.com/ScriptReference/ScreenOrientation.html

+0

それは簡単だったすごいああ:Dおかげでたくさん!風景がうまくいかない理由は何ですか? – Kullis

+1

私の喜び。 Unity 3.5に戻ってきましたが、 'ScreenOrientation.Landscape' enumへの参照が見つかりません。これにより、自動ローテーションがデフォルトになっている可能性があるため、ログレベルを上げてください。 –

+0

十分に公正です。再度、感謝します! ;) – Kullis

関連する問題