Alterar a resolução do jogo

Página atualizada :
Data de criação de página :

Ambiente de verificação

Windows
  • Janelas 11
Unity Editor
  • 2021.3.1f1
Pacotes do sistema de entrada
  • 1.3.0

Pré-requisitos para esta dica

As configurações a seguir são pré-configuradas como um pré-requisito para a explicação dessas dicas.

Especificando a resolução no início do jogo

Você pode definir a resolução no início do jogo a partir das configurações do projeto. No entanto, existem restrições, como suposições de modo de janela, então se você quiser defini-lo de forma confiável, acho que a configuração pelo programa descrito posteriormente é mais confiável.

Para fazer isso, selecione Editar -> Configurações do projeto no menu.

Selecione "Player" no menu à esquerda.

Na parte inferior, você pode encontrar as configurações para cada ambiente. Por exemplo, se o ícone de exibição na extremidade esquerda for a configuração do ambiente do PC, como o Windows.

"Resolução e Exibição" está recolhido dentro, então clique para expandi-lo e selecione "Janela" em "Modo de tela cheia" no grupo de resolução.

Em seguida, "Largura padrão da tela" e "Altura da tela padrão" serão exibidas, para que você possa definir a resolução (= tamanho da tela) aqui. Essa configuração só pode ser definida no modo de janela.

Existem configurações em outros ambientes, portanto, verifique-as. O diagrama a seguir mostra a configuração no WebGL. Resolução = tamanho da tela.

Executar e verificar

Eu não posso verificar se está correto, mesmo se eu executá-lo no Editor Unity, então eu vou sair do jogo e verificá-lo. Para obter instruções detalhadas, consulte as Dicas para saída do jogo .

Certifique-se de que ele é exibido no tamanho de tela especificado.

No entanto, mesmo se você alterar o valor de tamanho, o tamanho pode não ser alterado. Isso porque o próprio jogo lembra a resolução anterior. Se você quiser ter certeza de que a exibição está na resolução especificada, é mais confiável alterá-la com o programa descrito abaixo.

Alterar a resolução do programa

Aqui, eu gostaria de preparar a tela a seguir e controlá-la programaticamente para que a resolução mude quando cada botão é clicado. Para obter mais informações sobre como manipular a interface do usuário e os botões, consulte Dicas da interface do usuário .

Veja o que acontece quando você clica em cada botão:

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

Para os dois métodos inferiores, a única diferença é o número de resolução.

Screen.SetResolution Você pode alterar a resolução especificando "largura da resolução (px)", "altura da resolução (px)", "modo de tela cheia" e "taxa de atualização (Hz)" nos argumentos do método, respectivamente.

Desta vez, ele será definido no modo de janela, mas pode ser definido da mesma forma no modo de tela cheia.

Se você quiser forçá-lo a ser definido quando o jogo começar, acho que você pode lidar com isso com um método de script anexado awake a algum objeto na primeira cena.

Executar e verificar

Acho que você pode ver que clicar em cada botão muda a resolução (+ tamanho da janela).