Como pausar um jogo na Unity?

2 years ago
51

Como pausar um jogo na Unity?

Link Código 01: https://perai.dev/2021/08/09/como-pausar-um-jogo-na-unity-teclado/
Link Código 02: https://perai.dev/2021/08/09/como-pausar-um-jogo-na-unity-interface/
Link Asset: https://wenrexa.itch.io/uimobile-free

0:00 PERAI DEV
0:30 Código
4:21 Interface Feia
9:22 Interface Bonita
14:16 Os Botões

Existem várias maneiras de se pausar um jogo na Unity, e neste pequeno tutorial vou mostrar em poucos passos como fazer isso. Este tutorial foi dividido em duas partes. Sendo a primeira focada em como pausar usando apenas o teclado e a segunda mostrando um exemplo de como mostrar um painel escrito de que o jogo foi pausado.

Para pausar seu jogo utilizando apenas um botão, nesta parte do tutorial utilizaremos a tecla “P” para realizar a ação desejada e criaremos um Script chamado PauseMenu.cs. Nele, vamos utilizar a função Input.GetKeyDown, da própria unity, que verifica quando uma tecla foi pressionada. Com isso, precisaremos especificar para esta função qual a tecla gostaríamos que a unity nos avisasse de que foi pressionada, usando então KeyCode.P para este fim.Conhecendo a função (Input.GetKeyDown) e o parâmetro (KeyCode.P) é possível criar um “if” para então realizar uma ação.

E para quem ainda não conhece: A [engine] Unity 3D, é uma ferramenta sensacional de desenvolvimento, que você vai poder tirar suas ideias do papel e começar a criar aqueles jogos que tanto quis. E caso ainda não tenha a Unity instalada, siga: https://youtu.be/acWZR5_vfzA

Uma vez que criamos a condição para nossa ação “pausar”, agora podemos focar em como pausar o jogo de fato. Para isso precisamos ter em mente de que a Unity utiliza de Time.timeScale como forma “de controlar a velocidade” do jogo, sendo uma escala normalizada, quando Time.timeScale contém valor 1 o jogo funciona em tempo normal. Caso esse valor seja alterado para 0.5 o jogo passa a funcionar 2x mais lento do que o tempo normal, assim quando valor for 0 (zero) o jogo para por completo.

Considerando que seu jogo trabalha apenas com dois modos de velocidade “normal” e “pausado”, vamos utilizar “ifs” de verificação para estes dois casos. Ou seja, “quando o jogo estiver normal e a tecla P for pressionada, o jogo será pausado” e “quando o jogo já estiver pausado e a tecla P for pressionada, o jogo voltará ao normal.”. Com essas atualizações devemos ter o seguinte código dentro do “if”.

Agora que entendemos a lógica por trás do código é hora de adicionarmos ele ao nosso script (“PauseMenu.cs”) criado. Para que nosso código funcione da maneira esperada (no momento), ou seja, que em qualquer local do jogo seja possível pausar ao apertar a letra P, é necessário que este código fique dentro da função Update que é rodada a cada frame do seu jogo pela Unity

----
- Como criar um jogo na unity
- Criando um jogo tipo mario
- Jogo Plataforma
- Como criar um jogo de plataforma
- Como criar um jogo de plataforma na unity
#unity #unity3D #andrejeller

---
Outros Vídeos:
👉 Como Criar Jogos pelo Celular? ➡ https://youtu.be/qO1TGtErCAE
👉 Como criar um projeto na Unity? ➡ https://youtu.be/dvsrru8pR8g
👉 Como a Unity é organizada? ➡ https://youtu.be/eEOucIIeSw8
👉 Como importar um asset para a Unity? ➡ https://youtu.be/syRVLH3PToA
👉 Como criar um Script na Unity? ➡ https://youtu.be/iUF0EF2k_2Y
(Link PlayList: https://youtube.com/playlist?list=PLz...)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
EM BREVE por aqui um canal de desenvolvimento de jogo 100% focado no publico Brasileiro para te ensinar da melhor maneira possível o passo a passo da arte de criação de jogos. NADA É IMPOSSIVEL, mas é preciso muita dedicação.

E logicamente não ficaremos apenas em meros e simples tutoriais, mas estaremos em busca de entregar o que você gostaria de saber programar. Quem sabe apenas um jogo plataforma como Super Mario, ou mesmo um Flappy Bird para celular. Publicar na Google play talvez? Bom.. as possibilidades são infinitas quando lidamos com programação, e sempre há espaço para fazer um bug se transformar em uma feature.

Vou encontrar apenas conteúdo de unity por aqui? Tecnicamente não, pois a ideia é abranger outras engines também como Construct, quem sabe a nova Lamberyard e até um pouco de Unreal. Só que como a Unity tem uma maior demanda, você encontrará mais conteúdo sobre ela.

Loading comments...