Unity で 480x320 の解像度 (ビルド設定で設定) で作成したゲームがあります。しかし、すべての解像度のすべての Android デバイス用にゲームを公開したいと考えています。ゲームをデバイスの解像度にスケールアップするように Unity に指示するにはどうすればよいですか? することは可能ですか?
前もって感謝します!
Unity で 480x320 の解像度 (ビルド設定で設定) で作成したゲームがあります。しかし、すべての解像度のすべての Android デバイス用にゲームを公開したいと考えています。ゲームをデバイスの解像度にスケールアップするように Unity に指示するにはどうすればよいですか? することは可能ですか?
前もって感謝します!
私が行った方法は、デバイスのアスペクト比に応じてカメラのビューポートを変更することです。
スクリプトのいずれかでこれを行うことができます
float xFactor = Screen.width / 800f;
float yFactor = Screen.height / 1280f;
Camera.main.rect=new Rect(0,0,1,xFactor/yFactor);
これは魔法のように機能します
これを行う簡単な方法は、ターゲットを考慮することです。つまり、iPhone 5 のゲームを実行している場合、アスペクト比は 9:16 v または 16:9 h です。
public float targetRatio = 9f/16f; //The aspect ratio you did for the game.
void Start()
{
Camera cam = GetComponent<Camera>();
cam.aspect = targetRatio;
}
私にとっての最善の解決策は、交差する線の定理を使用して、側面のカットオフやゲーム ビューの歪みがないようにすることです。つまり、異なるアスペクト比に応じて前後に移動する必要があります。
必要に応じて、Unity アセット ストアに、カメラの距離を自動的に修正するアセットがあるので、使用しているハンドヘルド デバイスに関係なく、歪みやカットオフが発生することはありません。