Ändern der Spielauflösung

Diese Seite wurde aktualisiert :
Erstellungsdatum der Seite :

Verifikations-Umgebung

Fenster
  • Windows 11
Unity-Editor
  • 2021.3.1f1
Eingabesystem-Pakete
  • 1.3.0

Voraussetzungen für diesen Tipp

Die folgenden Einstellungen sind als Voraussetzung für die Erläuterung dieser Tipps vorkonfiguriert.

Festlegen der Auflösung zu Beginn des Spiels

Du kannst die Auflösung zu Beginn des Spiels in den Projekteinstellungen einstellen. Es gibt jedoch Einschränkungen wie z.B. Fenstermodus-Annahmen, wenn Sie es also zuverlässig einstellen möchten, denke ich, dass die Einstellung durch das später beschriebene Programm zuverlässiger ist.

Wählen Sie dazu Bearbeiten -> Projekteinstellungen aus dem Menü.

Wählen Sie "Player" aus dem Menü auf der linken Seite.

Unten finden Sie die Einstellungen für jede Umgebung. Zum Beispiel, wenn das Anzeigesymbol ganz links die Einstellung der PC-Umgebung wie Windows ist.

"Auflösung und Anzeige" ist im Inneren eingeklappt, klicken Sie also, um es zu erweitern, und wählen Sie "Fenster" aus "Vollbildmodus" in der Auflösungsgruppe.

Dann werden "Standard-Bildschirmbreite" und "Standard-Bildschirmhöhe" angezeigt, so dass Sie hier die Auflösung (= Bildschirmgröße) einstellen können. Diese Einstellung kann nur im Fenstermodus festgelegt werden.

Es gibt Einstellungen in anderen Umgebungen, also überprüfen Sie diese bitte. Das folgende Diagramm zeigt die Konfiguration in WebGL. Auflösung = Größe der Leinwand.

Ausführen und Überprüfen

Ich kann nicht überprüfen, ob es korrekt ist, selbst wenn ich es im Unity-Editor ausführe, also gebe ich das Spiel aus und überprüfe es. Ausführliche Anweisungen finden Sie in den Tipps für die Spielausgabe .

Stellen Sie sicher, dass es auf der angegebenen Bildschirmgröße angezeigt wird.

Selbst wenn Sie den Größenwert ändern, ändert sich die Größe möglicherweise nicht. Das liegt daran, dass sich das Spiel selbst an die vorherige Auflösung erinnert. Wenn Sie sicherstellen möchten, dass die Anzeige die angegebene Auflösung hat, ist es zuverlässiger, sie mit dem unten beschriebenen Programm zu ändern.

Ändern Sie die Auflösung über das Programm

Hier möchte ich den folgenden Bildschirm vorbereiten und programmgesteuert steuern, so dass sich die Auflösung ändert, wenn auf jede Schaltfläche geklickt wird. Weitere Informationen zum Umgang mit der Benutzeroberfläche und den Schaltflächen finden Sie unter Tipps zur Benutzeroberfläche .

Folgendes passiert, wenn Sie auf die einzelnen Schaltflächen klicken:

using UnityEngine;

public class ButtonEvent : MonoBehaviour
{
  public void OnClick_960x540()
  {
    // 横幅 pixel、縦幅 pixel、ウィンドウモード、リフレッシュレート(Hz) を指定
    // ウィンドウモードの場合、ウィンドウサイズも変わる
    Screen.SetResolution(960, 540, FullScreenMode.Windowed, 60);
  }
  public void OnClick_1280x720()
  {
    // 横幅 pixel、縦幅 pixel、ウィンドウモード、リフレッシュレート(Hz) を指定
    // ウィンドウモードの場合、ウィンドウサイズも変わる
    Screen.SetResolution(1280, 720, FullScreenMode.Windowed, 60);
  }
  public void OnClick_1600x900()
  {
    // 横幅 pixel、縦幅 pixel、ウィンドウモード、リフレッシュレート(Hz) を指定
    // ウィンドウモードの場合、ウィンドウサイズも変わる
    Screen.SetResolution(1600, 900, FullScreenMode.Windowed, 60);
  }
}

Bei den unteren beiden Methoden besteht der einzige Unterschied in der Auflösungszahl.

Screen.SetResolution Sie können die Auflösung ändern, indem Sie "Auflösungsbreite (px)", "Auflösungshöhe (px)", "Vollbildmodus" bzw. "Bildwiederholfrequenz (Hz)" in den Methodenargumenten angeben.

Dieses Mal wird es im Fenstermodus eingestellt, aber es kann auf die gleiche Weise im Vollbildmodus eingestellt werden.

Wenn Sie erzwingen möchten, dass es beim Start des Spiels festgelegt wird, können Sie es meiner Meinung nach mit einer Skriptmethode handhaben, die an ein Objekt in der awake ersten Szene angehängt ist.

Ausführen und Überprüfen

Ich denke, Sie können sehen, dass das Klicken auf jede Schaltfläche die Auflösung (+ Fenstergröße) ändert.