Projetos RAD : Unity 3D 
Criação de Instâncias e Objetos 
Augusto Bülow
Unity 
• Criar objetos por script: 
– Primitivas: objetos básicos e gerais 
– Instâncias: objetos complexos, pré-modulados...
Unity 
• Criando um novo objeto : primitivas 
• GameObject.CreatePrimitive 
– Definir tipo de primitiva 
//criando objeto ...
Unity 
• Tipos de primitivas válidas: 
• PrimitiveType. 
– Sphere 
– Capsule 
– Cylinder 
– Cube 
– Plane 
• Objetos criad...
Unity 
• Possível manter uma referência ao objeto na criação 
• Com sua referência (ponteiro): 
– Atualizar suas proprieda...
Unity 
• Adicionando um componente a um objeto: 
• gameObject.AddComponent(type) 
– Rigidbody 
– “SphereCollider” 
– “Scri...
Unity 
• Criando um objeto vazio (empty) 
– Possível atribuir um nome 
– Possível adicionar todos componentes manualmente ...
Unity 
• Criando uma Instância 
– Baseado em objetos prefab (precisa de um prefab) 
– Prefab: objetos complexos, com mater...
Unity 
• Exemplo de Instantiate 
//Declarar quem será instanciado – selecionável pelo inspector 
var clone : Transform; 
....
Unity 
• Rotação = Quaternion 
• Tipo específico da Unity 
• Componentes X,Y,Z,W 
• Ângulos são interpolados pela Unity, n...
Unity 
• Outros exemplos de criação múltipla: 
var clone2 : Transform; 
... 
if (Input.GetKeyDown("6")) { 
// 10 instancia...
Próximos SlideShares
Carregando em…5
×

Aula8 instancias

635 visualizações

Publicada em

Aula para criação de instancias no Unity3D

Publicada em: Educação
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
635
No SlideShare
0
A partir de incorporações
0
Número de incorporações
328
Ações
Compartilhamentos
0
Downloads
11
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula8 instancias

  1. 1. Projetos RAD : Unity 3D Criação de Instâncias e Objetos Augusto Bülow
  2. 2. Unity • Criar objetos por script: – Primitivas: objetos básicos e gerais – Instâncias: objetos complexos, pré-modulados • Utilização geral: – Criar inimigos e itens em tempo real – Criar balas e disparos – Criar objetos auxiliares (diversos) – Criar cenários em tempo real – Limite = imaginação
  3. 3. Unity • Criando um novo objeto : primitivas • GameObject.CreatePrimitive – Definir tipo de primitiva //criando objeto simples if (Input.GetKey("1")) { GameObject.CreatePrimitive(PrimitiveType.Cube); }
  4. 4. Unity • Tipos de primitivas válidas: • PrimitiveType. – Sphere – Capsule – Cylinder – Cube – Plane • Objetos criados são posicionados na origem do mundo inicialmente. Coordenadas (0,0,0)
  5. 5. Unity • Possível manter uma referência ao objeto na criação • Com sua referência (ponteiro): – Atualizar suas propriedades – Adicionar componentes em geral if (Input.GetKeyDown("2")) { var novo = GameObject.CreatePrimitive(PrimitiveType.Cube); //colocar novo objeto em posição específica novo.transform.position = Vector3( 2, 2, 2); }
  6. 6. Unity • Adicionando um componente a um objeto: • gameObject.AddComponent(type) – Rigidbody – “SphereCollider” – “ScriptName” ou “AssetName” if (Input.GetKeyDown("2")) { var novo = GameObject.CreatePrimitive(PrimitiveType.Cube); novo.transform.position = Vector3( 2, 2, 2); novo.AddComponent(Rigidbody); }
  7. 7. Unity • Criando um objeto vazio (empty) – Possível atribuir um nome – Possível adicionar todos componentes manualmente • new GameObject(“nome”) if (Input.GetKeyDown("4")) { novo3 = new GameObject ("Vazio"); novo3.AddComponent ("Rigidbody"); novo3.AddComponent ("BoxCollider"); novo3.transform.position = Vector3( 1, 1, 1); }
  8. 8. Unity • Criando uma Instância – Baseado em objetos prefab (precisa de um prefab) – Prefab: objetos complexos, com materiais, códigos, componentes já atachados = re-utilização aux = Instantiate( original, posição, rotação); Original = algum prefab pre-determinado Posição = Vector3(X, Y, Z) Rotação = Quaternion
  9. 9. Unity • Exemplo de Instantiate //Declarar quem será instanciado – selecionável pelo inspector var clone : Transform; .... if (Input.GetKeyDown("5")) { novo4 = Instantiate(clone, transform.position,transform.rotation) }
  10. 10. Unity • Rotação = Quaternion • Tipo específico da Unity • Componentes X,Y,Z,W • Ângulos são interpolados pela Unity, não modificar elementos manualmente • Operações / funções especificas para transformação de ângulo • Exemplos básicos: – Quaternion.identity; • Ângulo 0,0,0 perfeitamente alinhado com eixos do mundo – Quaternion.Euler(X, Y, Z) • Conversão direta de graus (X,Y,Z) para Quaternion
  11. 11. Unity • Outros exemplos de criação múltipla: var clone2 : Transform; ... if (Input.GetKeyDown("6")) { // 10 instancias do clone2, 2 unidades de distancia for (var i=0; i<10; i++) { Instantiate (clone2, Vector3(i * 2.0, 0,0),Quaternion.identity); } }

×