Variáveis que guardam valores
Parte da seção Fundamentos de Scripting no Unity do Journey de Unity da Coddy. Lição 5 de 85.
Unity chama Update() a cada quadro, e cada chamada começa do zero: uma variável criada dentro de um método é descartada quando o método termina. Então, esse contador nunca passa de 1:
void Update()
{
int frames = 0;
frames++;
}frames++ adiciona 1, uma forma abreviada de escrever frames += 1. Mas, no quadro seguinte, int frames = 0; é executado novamente e recomeça do zero.
Para lembrar um valor de um quadro para o seguinte, crie a variável dentro da classe, mas fora de todos os métodos. Uma variável nesse local é um campo: ela existe enquanto o objeto existir, e todos os métodos da classe podem usá-la.
int frames = 0;
void Update()
{
frames++;
}Agora frames continua contando: 1, 2, 3 e assim por diante, aumentando em um a cada quadro.
Desafio
FácilFaça a planta continuar crescendo.
- Recorte a linha
int frames = 0;de dentro deUpdate(). - Cole-a acima de
void Update(), dentro da classe, para queframesse torne um campo que mantém a contagem.
Pressione “Jogar”: a planta fica um pouco mais alta a cada quadro. Depois, pressione “Verificar”.
Experimente você mesmo
using UnityEngine;
public class Grower : MonoBehaviour
{
void Update()
{
int frames = 0;
frames++;
transform.localScale = new Vector3(1, 1 + frames * 0.01f, 1);
}
}
Todas as lições de Fundamentos de Scripting no Unity
1Fundamentos de C# no Unity
Olá, UnityVariáveisDecimais precisam de um fTexto no ConsoleVariáveis que guardam valoresIf e ElseComparar númerosRevisão: Coletor de Moedas7Laços e Métodos
Repita com forLaços dentro de laçosEscreva um métodoMétodos que respondemArraysRevisão: Escada10Encontrando coisas
Buscar pelo nomeTagsBuscar por tipoReferências são melhores que FindO null do UnityRevisão: moeda mais próxima13Projeto: Desvie dos Blocos
O CorredorBlocos do Céu2Faça-o se mover
Posicione o cuboMova a cada quadroGire a cada segundoDirija com as teclasRecapitulando: dirija o cubo5Vetores
Somando vetoresDireçõesEspaço local e globalVelocidade diagonalDistância entre objetosVector3 é uma structRevisão: piloto de drone8GameObjects e Componentes
Referências no InspectorObter um componenteComponentes ausentesAdicionar um componenteRequireComponentMostrar e ocultarRevisão: Interruptor de luz6Transformações e hierarquia
Pais e filhosIçar a bandeiraEscalaOlhar para as coisasMover-se em direção a um pontoRevisão: Lua em órbita9Projeto: Pegue a Estrela
O PegadorUma Estrela CadentePratique por conta própria: Playground de Unity