Como já dito, em outro post, a Unity permite trabalhar com duas linguagens de programação, são elas C# e Javascript.
Nesse post será apresentado uma introdução à algumas funções e palavras-chave quando trabalha-se com a Unity usando Javascript. Veja a seguir o exemplo de algumas dessas palavras e funções.
Java Script | |
---|---|
import | Importar bibliotecas necessáriasimport UnityEngine.UI; |
// | Comentar uma linha//Essa linha é um comentario |
private, public | Visibilidade da variável, por padrão as variáveis são publicprivate var segredo:String; |
bool | Variável: true ou falsevar pego:bool; |
int | Variável de número inteirovar idade:int; |
float | Variável de número decimalvar numero:float; |
String | Variável de textovar nome:String; |
null | Variável nula |
+ - * / % ++ -- | Operadores matemáticos2 + 5 |
if(condição){ | Estrutura de seleção 'if'if(blog == "FrankDantas.js"){ |
== != < > <= >= | Operadores relacionais2 == 2; //true |
&& || | Operadores lógicos2==2 && nome == "Aluno" |
switch(var){ | Similar ao 'if'switch(nome){ |
Expressão ? resultado1 : resultado2 | Operador ternário. Similar ao 'if'decisao = idade >= 18 ? "Maior idade" : "Menor"; |
while(condição){ | Executa o code enquanto a condição for verdadeira/true |
var values : float[]; | Criar um novo array/vetor de float |
arr.Push ("Hello"); | Adicionar item no final do array |
arr[1] = "World"; | Atribuir valor na posição 1 do array |
arr.length | Obter tamanho do array |
for (var value : String in arr) { | Percorrer itens do array de String |
function Nome(){ | Função simples |
function Nome(){ | Função com retorno |
function Nome(param1, param2){ | Função com parâmetro |
MonoBehavior / Unity | |
---|---|
Vector3 | Variável do tipo Vector 3var posicao:Vector3 = new Vector3(0,0,0); |
Awake() | Chamada antes da função Start(), Update() e FixedUpdate(). |
Update | Loop para sempre, chamada após o start. Use com Time.deltaTime para melhorar o desempenho do jogo.function Update(){ |
FixedUpdate() | Chamada a cada frame, depende do framerate do computador |
OnEnable() | Chamada quando o gameobject volta a ser ativo |
Start() | Chamada depois do Awake() e antes do Update()function Start(){ |
Instantiate(obj, position, rotation) | Cria uma cópia do 'obj' na posição e rotação escolhida |
GetComponent.<Type>() | Retorna o componente do Type escolhido do gameObject selecionado, se tivervar rb:Rigidbody = GetComponent.<Rigidbody>(); |
Destroy(obj) | Remove um gameobject ou component escolhido |
gameObject.transform.position | Retorna em um Vector3 a posição do gameObject |
gameObject.transform.rotation | Retorna a rotação do gameObject escolhido num Vector3 |
Outros Componentes | |
---|---|
OnCollisionEnter(other:Collision){ | Chamada quando um rigidbody começa a colidir com outro. |
OnCollisionExit(other:Collision){ | Chamada quando um rigidbody deixa de colidir com outro. |
OnTriggerEnter(other:Collider){ | Chamada quando um o Collider colide com outro. O isTrigger deve estar ativo.function OnTriggerEnter (other:Collider){ |
OnTriggerExit(other:Collider){ | Chamada quando um o Collider deixa de colidir com outro. O isTrigger deve estar ativo. |
Physics.Raycast() | Verifica se há colisão na direção escolhida |
Input.GetKeyDown(KeyCode.Space) | Retorna um bool se a tecla escolhida estiver apertada |
Mathf | Object das funções matemáticas |
var audio: AudioSource = GetComponent.<AudioSource>(); | Toca o audio escolhi no componente AudioSource do gameObject |
Random.Range(min, max) | Retorna um número dentre o min e o max escolhido, inclusos. |
Application.LoadLevel(index) | Carrega a cena com o index escolhido. O index é escolhido da tela de 'Build Settings' no menu 'File' |
Application.LoadLevel(Application.loadedLevel) | Recarrega a cena |
Comentários
Postar um comentário