Mengubah resolusi game

Halaman Diperbarui :
Tanggal pembuatan halaman :

Lingkungan verifikasi

Windows
  • jendela 11
Editor Kesatuan
  • 2021.3.1f1
Paket Sistem Input
  • 1.3.0

Prasyarat untuk tip ini

Pengaturan berikut telah dikonfigurasi sebelumnya sebagai prasyarat untuk penjelasan tips ini.

Menentukan resolusi di awal permainan

Anda dapat mengatur resolusi di awal permainan dari pengaturan proyek. Namun, ada batasan seperti asumsi mode jendela, jadi jika Anda ingin mengaturnya dengan andal, saya pikir pengaturan oleh program yang dijelaskan nanti lebih dapat diandalkan.

Untuk melakukannya, pilih Edit -> Pengaturan Proyek dari menu.

Pilih "Player" dari menu di sebelah kiri.

Di bagian bawah, Anda dapat menemukan pengaturan untuk setiap lingkungan. Misalnya, jika ikon tampilan di paling kiri adalah pengaturan lingkungan PC seperti Windows.

"Resolusi dan Tampilan" diciutkan di dalam, jadi klik untuk memperluasnya, dan pilih "Berjendela" dari "Mode Layar Penuh" di grup resolusi.

Kemudian "Lebar layar default" dan "Tinggi layar default" akan ditampilkan, sehingga Anda dapat mengatur resolusi (= ukuran layar) di sini. Pengaturan ini hanya dapat diatur dalam mode berjendela.

Ada pengaturan di lingkungan lain, jadi silakan periksa. Diagram berikut menunjukkan konfigurasi di WebGL. Resolusi = ukuran kanvas.

Jalankan dan verifikasi

Saya tidak dapat memeriksa apakah itu benar bahkan jika saya menjalankannya di Editor Unity, jadi saya akan menampilkan game dan memeriksanya. Untuk petunjuk terperinci, lihat Tips untuk Output Game .

Pastikan itu ditampilkan pada ukuran layar yang ditentukan.

Namun, bahkan jika Anda mengubah nilai ukuran, ukuran mungkin tidak berubah. Ini karena game itu sendiri mengingat resolusi sebelumnya. Jika Anda ingin memastikan bahwa tampilan berada pada resolusi yang ditentukan, lebih dapat diandalkan untuk mengubahnya dengan program yang dijelaskan di bawah ini.

Ubah resolusi dari program

Di sini, saya ingin menyiapkan layar berikut dan mengontrolnya secara terprogram sehingga resolusi berubah ketika setiap tombol diklik. Untuk informasi selengkapnya tentang cara menangani UI dan tombol, lihat Tips UI .

Inilah yang terjadi ketika Anda mengklik setiap tombol:

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

Untuk dua metode terbawah, satu-satunya perbedaan adalah nomor resolusi.

Screen.SetResolution Anda dapat mengubah resolusi dengan menentukan "lebar resolusi (px)", "tinggi resolusi (px)", "mode layar penuh", dan "kecepatan refresh (Hz)" masing-masing dalam argumen metode.

Kali ini, itu akan diatur dalam mode berjendela, tetapi dapat diatur dengan cara yang sama dalam mode layar penuh.

Jika Anda ingin memaksanya diatur saat permainan dimulai, saya pikir Anda dapat menanganinya dengan metode skrip yang dilampirkan pada beberapa objek di awake adegan pertama.

Jalankan dan verifikasi

Saya pikir Anda dapat melihat bahwa mengklik setiap tombol mengubah resolusi (+ ukuran jendela).