Zmena rozlíšenia hry

Stránka aktualizovaná :
Dátum vytvorenia strany :

Prostredie overovania

Windows
  • Windows 11
Editor jednoty
  • 2021.3.1F1
Vstupné systémové balíky
  • 1.3.0

Predpoklady pre tento tip

Nasledujúce nastavenia sú vopred nakonfigurované ako predpoklad na vysvetlenie týchto tipov.

Zadanie rozlíšenia na začiatku hry

Rozlíšenie môžete nastaviť na začiatku hry v nastaveniach projektu. Existujú však obmedzenia, ako sú predpoklady režimu okna, takže ak ho chcete spoľahlivo nastaviť, myslím si, že nastavenie programom opísaným nižšie je spoľahlivejšie.

Ak to chcete urobiť, vyberte z ponuky položku Upraviť > nastavenia projektu.

V ponuke vľavo vyberte možnosť "Prehrávač".

V dolnej časti nájdete nastavenia pre jednotlivé prostredia. Ak je napríklad ikona obrazovky úplne vľavo nastavením prostredia počítača, ako je napríklad Windows.

"Rozlíšenie a zobrazenie" je zbalené vo vnútri, takže kliknutím ho rozbaľte a vyberte možnosť "Okno" z "Režimu celej obrazovky" v skupine rozlíšení.

Potom sa zobrazí "Predvolená šírka obrazovky" a "Predvolená výška obrazovky", takže tu môžete nastaviť rozlíšenie (= veľkosť obrazovky). Toto nastavenie je možné nastaviť iba v režime okna.

Existujú nastavenia v iných prostrediach, preto ich prosím skontrolujte. Nasledujúci diagram zobrazuje konfiguráciu vo formáte WebGL. Rozlíšenie = veľkosť plátna.

Spustenie a overenie

Nemôžem skontrolovať, či je správna, aj keď ju spustím v editore Unity, takže hru vygenerujem a skontrolujem. Podrobné pokyny nájdete v tipoch pre herný výstup .

Skontrolujte, či sa zobrazuje na zadanej veľkosti obrazovky.

Aj keď zmeníte hodnotu veľkosti, veľkosť sa nemusí zmeniť. Je to preto, že samotná hra si pamätá predchádzajúce rozlíšenie. Ak sa chcete uistiť, že displej je v určenom rozlíšení, je spoľahlivejšie ho zmeniť pomocou programu opísaného nižšie.

Zmena rozlíšenia z programu

Tu by som chcel pripraviť nasledujúcu obrazovku a ovládať ju programovo tak, aby sa rozlíšenie zmenilo pri kliknutí na každé tlačidlo. Ďalšie informácie o tom, ako zaobchádzať s používateľským rozhraním a tlačidlami, nájdete v téme Tipy pre používateľské rozhranie .

Po kliknutí na jednotlivé tlačidlá sa stane toto:

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);
  }
}

Pri spodných dvoch metódach je jediným rozdielom číslo rozlíšenia.

Screen.SetResolution Rozlíšenie môžete zmeniť zadaním "šírky rozlíšenia (px)", "výšky rozlíšenia (px)", "režimu celej obrazovky" a "obnovovacej frekvencie (Hz)" v argumentoch metódy.

Tentoraz bude nastavený v režime okna, ale rovnakým spôsobom sa dá nastaviť v režime celej obrazovky.

Ak ho chcete vynútiť, aby bol nastavený pri spustení hry, myslím, že to zvládnete metódou skriptu pripojenou k nejakému objektu v prvej scéne awake .

Spustenie a overenie

Myslím, že môžete vidieť, že kliknutím na každé tlačidlo sa zmení rozlíšenie (+ veľkosť okna).