ウィンナスのプログラミング忘備録

アプリケーション制作をしている最中に発見したテクニックを忘備録としてまとめていきます。

【Unity】スマホ端末を回転させた際の画面の向きを制御しよう!

Unityでゲームアプリの開発をする場合に必ずと言っていいほど必要になるのが、端末を回転させた際の画面の向きですよね!

一般的には「orientation」と呼ばれている部分ですね!

 

今回は端末を回転させた際の画面の向きを制御していきます。

 

まずはシステム関連専用のスクリプトを作ってみる

この辺はそれぞれやり方があると思いますが、私の場合システム関連をまとめたゲームオブジェクトを画面の外にポイッっとやります。

 

まず初めに「Hierarchy」を右クリックして「Create Empty」を選択します。

そうすると何も設定されていないゲームオブジェクトが作成されます。

f:id:win-friendof:20160703224027j:plain

今度は作成したゲームオブジェクトに対してスクリプトを設定します。

「Inspector」から「Add Component」を選択し、「New Script」をクリックします。

私の場合、C#を選び、「system」という名前にしました。

f:id:win-friendof:20160703224737j:plain

あとはC#を編集するだけです!

 

Script(C#)を編集する!

C#を編集といっても以下のコードを書くだけで出来ちゃいますww

 

using UnityEngine;
using System.Collections;

public class system : MonoBehaviour {

	// Use this for initialization
	void Start () {
		//スマホの左側が下になります
		Screen.autorotateToLandscapeLeft = true;
		//スマホの右側が下になります
		Screen.autorotateToLandscapeRight = true;
		//スマホの下が下になります
		Screen.autorotateToPortrait = false;
		//スマホの上が上になります
		Screen.autorotateToPortraitUpsideDown = false;
	}
	
	// Update is called once per frame
	void Update () {
	
	}
}

それぞれ「true」になっていれば、適用されます。

「false」になっていれば、適用されません。

 

初期状態を設定しよう!

ここまででは初期状態は設定されていません。

では、どうするのかというと、

 [ File ] ⇒ [ Build Setting ]をクリックしてビルドの設定画面を出します。

f:id:win-friendof:20160628000203j:plain

ビルド画面から [ Player Settings ] を選択します。

f:id:win-friendof:20160628230053j:plain

「Inspector」に設定画面が出るので下の画像の赤枠部分から初期状態のorientationを選択します。

f:id:win-friendof:20160704225514j:plain

※この画像ではAndroidを前提としています。iPhoneの場合は画面中央にあるiPhoneっぽいアイコンを選択してください。