はじめに
スマートフォン向けゲームを作るうえで、画面を縦または横に固定しておくのは非常に重要です。
本記事では、画面を固定する方法と、ゲームの途中で切り替える方法についても紹介します。
画面の縦横固定方法
画面の縦横を固定するには、主に2つの方法があります。
- Unityの標準機能を使用する方法
- コードを使用する方法
それぞれ紹介します!
1. Unityの標準機能を使用する方法
画面を固定したいだけなら、この方法がおすすめです。
Edit > Project Settings… を開きます。
Player を選択し、AndroidかiOSタブどちらかを開きます。
AndroidかiOSタブどちらかで設定すると、もう片方も同様に設定されるよ!
Resolution Scaling > Orientation > Default Orientationを固定したい方向に設定します。
デフォルトでは、Auto Rotationとなっており、スマホを傾けると自動的に切り替わるようになっています。
Portrait | 縦向き |
PortraitUpsideDown | 縦向きの逆方向 |
LandscapeLeft | 左へ傾けた向き 縦向きから反時計回り |
LandscapeRight | 右へ傾けた向き 縦向きから時計回り |
AutoRotation | 使用可能な向きの中で、必要に応じて自動で向きを変更します |
2. コードを使用する方法
ゲームの途中で変更したい場合は、コードを使う方法があります。といっても、一行で済みます。
Screen.orientation = ScreenOrientation.Portrait; // 縦画面に固定
横画面に固定したい場合は、PortraitをLandscapeLeftや、LandscapeRightに変更しましょう。
方向を指定して自動で向きを変更させたい場合
縦方向にのみ回転させたい場合のコード例です。自動回転させたい向きのみtrueにします。
using UnityEngine;
public class Example : MonoBehaviour
{
void Start()
{
Screen.autorotateToPortrait = true;
Screen.autorotateToPortraitUpsideDown = true;
Screen.orientation = ScreenOrientation.AutoRotation;
}
}
おわりに
画面の固定と切り替え方法の紹介でした!
スマートフォン向けゲームでは、縦・横に固定しているゲームが多いので、必須の内容ですね。