SlideShare uma empresa Scribd logo
1 de 18
Projeto de jogos RAD: 
Animações – Parte 2 
Modelos Animados 
Augusto Bülow
Unity3D 
• Modelos Animados: 
• Produzidos em softwares de criação 3D 
• Animações: Mocap e outras técnicas 
• Formatos (programas) 
• Maya, Max, Blender, Cinema4D, Lightwave... 
• Formatos .FBX, .OBJ, .3DS, .DXF 
• FBX – bom formato (exportação / 
importação)
Unity3D 
• Formatos comuns, não necessitam 
software adicional 
• FBX, OBJ, 3DS... 
• Formatos específicos, necessitam 
programas adicionais no sistema 
• MAX, MAYA...
Unity3D 
• Animações exportadas junto ao modelo 
• Animações: Arquivo único 
• Split: define-se quadros para cada animação 
• Saber o plano de animações: definir quadros 
• Animações: Arquivos separados 
• EX: nomemodelo@nomeanima.FBX 
• Importa-se todos arquivos 
• Junção – uso - automático
Unity3D 
• Incluir modelo = Import New Asset 
• Arquivo principal modelo 
• Animações arquivos separados 
(nome@anima)
Unity3D 
• Modelo tem constituição variada 
• Número de meshes, partes, bones, etc 
• Depende do artista que o fez 
• Tamanho controlável na importação 
• Propriedades do modelo 
• FBX Importer 
• Scale Factor
Unity3D
Unity3D 
• Importando textura do modelo 
• Importar BMAP 
• Material criado automaticamente * 
• Re-atribuir BMAP para o material
Unity3D 
• Importar animações 
• Arquivos adicionais 
• Mesma Escala (fator)* 
• Animações disponíveis 
no modelo (cena) 
• Atribuição animas = 
automático (mesmo 
nome@anima) 
• Anima selecionável: 
testar
Unity3D 
• Animações disponíveis, como usar? 
• Criar: 
• Scripts ativando animações na hora certa 
• Criar regras para animações básicas 
• Com velocidade = andando 
• Sem velocidade = parado (idle) 
• Comandos – iniciam animações 
• Botão pulo = pular 
• Eventos 
• Atingido = anima / morre 
• Etc
Unity3D 
• Usando Modelo como player 
• Atribuir tipo de colisão 
• (Rigidbody ou CharacterController) 
• Criar códigos para movimento (script) 
• EX: Player com CharacterController 
• Inserir CharacterController no modelo 
• Criar script básico de controle do movimento
Unity3D 
• Código base – move (CharacterController) 
var forca_move : Vector3; 
var forca_rota : Vector3; 
var velocidade = 20.0; 
var gravidade = 0.5; 
function Update () { 
forca_move.x = Input.GetAxis("Horizontal") * Time.deltaTime * velocidade; 
forca_move.y -= gravidade * Time.deltaTime; 
forca_move.z = Input.GetAxis("Vertical") * Time.deltaTime * velocidade; 
forca_move = transform.TransformDirection(forca_move); 
pointer = GetComponent(CharacterController); 
pointer.Move(forca_move); 
forca_rota.y = Input.GetAxis("Mouse X") * 2; 
transform.Rotate(forca_rota); 
}
Unity3D 
• Animações, definir regras básicas 
• Movimento = velocidade = anima anda 
//ANIMACAO 
if (Mathf.Abs(forca_move.z) > 0) { 
//animation.CrossFade("walk"); 
animation.Play("walk"); 
} 
else { 
//animation.CrossFade("idle"); 
animation.Play("idle"); 
}
Unity3D 
• Animações por comandos específicos 
• Pulo = anima pular 
var no_chao : boolean; 
if (Input.GetKeyDown("space") && (no_chao)) { 
forca_move.y = forca_pulo; 
animation.CrossFade("jump"); 
} 
pointer.Move(forca_move); 
no_chao = pointer.isGrounded; // APÓS O MOVE
Unity3D 
• Necessário criar / aprimorar regras 
• Se pulando não entra na regra de animação por 
velocidade 
• Como fazer? Variáveis. EX: var pulando 
• Só acessa regra velocidade senão pulando 
• Algumas animações tem que ser protegidas, 
priorizadas 
• Alguns casos, travando inclusive controles 
adicionais do player
Unity3D 
if (Input.GetKeyDown("space") && (no_chao)) { 
forca_move.y = forca_pulo; 
animation.CrossFade("jump"); 
pulando = 1; 
} 
... 
if (no_chao && pulando == 1) { 
pulando = 0; 
}
Unity3D 
• Sincronizar momento da animação com ação 
• Atirar no momento certo da animação 
• Pular no momento certo da animação 
• Vários modos de fazê-lo 
• Evento vinculado na animação* 
• Checar tempo atual da animação e disparar código 
if ((animation["jump"].time >= 0.2 ) && (pulando == 1)) { 
forca_move.y = forca_pulo; 
pulando = 2; 
}
Unity3D 
• Segurando uma animação (pulo = no ar) 
• Possível usar animações separadas para os estágios: 
• pular, no ar, volta chão 
• Possível codificar para manter animação em um ponto: 
if (pulando == 2 && animation["jump"].time >= 0.6 ) 
animation["jump"].time = 0.6; 
if (no_chao && pulando >= 2) { 
if (animation["jump"].time < 0.9) { pulando = 3; } 
else { pulando = 0; } 
}

Mais conteúdo relacionado

Semelhante a Modelos animados em Unity3D

Introdução ao cocos sharp
Introdução ao cocos sharpIntrodução ao cocos sharp
Introdução ao cocos sharpJosé Farias
 
Desenvolvimento de jogos para android com andengine
Desenvolvimento de jogos para android com andengineDesenvolvimento de jogos para android com andengine
Desenvolvimento de jogos para android com andengineDiego Lopes
 
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr JamDesenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr JamAndré Espeiorin
 
Thiago Valle e Heitor Repolho - Utilizando sparta para para desenvolvimento d...
Thiago Valle e Heitor Repolho - Utilizando sparta para para desenvolvimento d...Thiago Valle e Heitor Repolho - Utilizando sparta para para desenvolvimento d...
Thiago Valle e Heitor Repolho - Utilizando sparta para para desenvolvimento d...INdT
 
Desenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael JeffmanDesenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael JeffmanTchelinux
 
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...Tchelinux
 
Introdução às Game Engines
Introdução às Game Engines Introdução às Game Engines
Introdução às Game Engines Jerry Medeiros
 
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-xComputer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-xPedro Kayatt
 
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5Willian Molinari
 
Introdução ao desenvolvimento de jogos em OGRE 3D - Mackenzie
Introdução ao desenvolvimento de jogos em OGRE 3D - MackenzieIntrodução ao desenvolvimento de jogos em OGRE 3D - Mackenzie
Introdução ao desenvolvimento de jogos em OGRE 3D - Mackenziejonathanblacknight
 
Júlio Pescuite - Advanced Topics for Game Developers
Júlio Pescuite - Advanced Topics for Game DevelopersJúlio Pescuite - Advanced Topics for Game Developers
Júlio Pescuite - Advanced Topics for Game DevelopersiMasters
 

Semelhante a Modelos animados em Unity3D (20)

Aula1 intro
Aula1  introAula1  intro
Aula1 intro
 
Introdução ao cocos sharp
Introdução ao cocos sharpIntrodução ao cocos sharp
Introdução ao cocos sharp
 
Aula modelos
Aula modelosAula modelos
Aula modelos
 
Aula maps
Aula mapsAula maps
Aula maps
 
Desenvolvimento de jogos para android com andengine
Desenvolvimento de jogos para android com andengineDesenvolvimento de jogos para android com andengine
Desenvolvimento de jogos para android com andengine
 
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr JamDesenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
 
Unity3d
Unity3dUnity3d
Unity3d
 
Thiago Valle e Heitor Repolho - Utilizando sparta para para desenvolvimento d...
Thiago Valle e Heitor Repolho - Utilizando sparta para para desenvolvimento d...Thiago Valle e Heitor Repolho - Utilizando sparta para para desenvolvimento d...
Thiago Valle e Heitor Repolho - Utilizando sparta para para desenvolvimento d...
 
UTools Unite Brasil
UTools Unite BrasilUTools Unite Brasil
UTools Unite Brasil
 
Desenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael JeffmanDesenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael Jeffman
 
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
 
Introdução às Game Engines
Introdução às Game Engines Introdução às Game Engines
Introdução às Game Engines
 
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-xComputer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
 
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
 
Aula6 colisao2
Aula6 colisao2Aula6 colisao2
Aula6 colisao2
 
Introdução ao desenvolvimento de jogos em OGRE 3D - Mackenzie
Introdução ao desenvolvimento de jogos em OGRE 3D - MackenzieIntrodução ao desenvolvimento de jogos em OGRE 3D - Mackenzie
Introdução ao desenvolvimento de jogos em OGRE 3D - Mackenzie
 
Júlio Pescuite - Advanced Topics for Game Developers
Júlio Pescuite - Advanced Topics for Game DevelopersJúlio Pescuite - Advanced Topics for Game Developers
Júlio Pescuite - Advanced Topics for Game Developers
 
Aula menus
Aula menusAula menus
Aula menus
 
Aula cameras
Aula camerasAula cameras
Aula cameras
 
Aula particulas
Aula particulasAula particulas
Aula particulas
 

Mais de Marcos Batista (11)

Aula terrain
Aula terrainAula terrain
Aula terrain
 
Aula som
Aula somAula som
Aula som
 
Aula sky
Aula skyAula sky
Aula sky
 
Aula ia
Aula iaAula ia
Aula ia
 
Aula gui
Aula guiAula gui
Aula gui
 
Aula9 material
Aula9 materialAula9 material
Aula9 material
 
Aula8 instancias
Aula8 instanciasAula8 instancias
Aula8 instancias
 
Aula7 velocidade
Aula7 velocidadeAula7 velocidade
Aula7 velocidade
 
Aula5 colisao1
Aula5 colisao1Aula5 colisao1
Aula5 colisao1
 
Aula4 debug
Aula4   debugAula4   debug
Aula4 debug
 
Aula2 intro2
Aula2   intro2Aula2   intro2
Aula2 intro2
 

Último

ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024Jeanoliveira597523
 
A experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptxA experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptxfabiolalopesmartins1
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaaulasgege
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADOcarolinacespedes23
 
Regência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfRegência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfmirandadudu08
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfAdrianaCunha84
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxleandropereira983288
 
Prova uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdfProva uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdfArthurRomanof1
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveaulasgege
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Mary Alvarenga
 
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMVanessaCavalcante37
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesMary Alvarenga
 
“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptx“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptxthaisamaral9365923
 
02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdfJorge Andrade
 
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBCRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBAline Santana
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditaduraAdryan Luiz
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxLuizHenriquedeAlmeid6
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasCassio Meira Jr.
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Centro Jacques Delors
 

Último (20)

ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024
 
A experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptxA experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptx
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
 
Regência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfRegência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdf
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdf
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptx
 
Prova uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdfProva uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdf
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
 
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das Mães
 
“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptx“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptx
 
02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf
 
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBCRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditadura
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades Motoras
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029
 

Modelos animados em Unity3D

  • 1. Projeto de jogos RAD: Animações – Parte 2 Modelos Animados Augusto Bülow
  • 2. Unity3D • Modelos Animados: • Produzidos em softwares de criação 3D • Animações: Mocap e outras técnicas • Formatos (programas) • Maya, Max, Blender, Cinema4D, Lightwave... • Formatos .FBX, .OBJ, .3DS, .DXF • FBX – bom formato (exportação / importação)
  • 3. Unity3D • Formatos comuns, não necessitam software adicional • FBX, OBJ, 3DS... • Formatos específicos, necessitam programas adicionais no sistema • MAX, MAYA...
  • 4. Unity3D • Animações exportadas junto ao modelo • Animações: Arquivo único • Split: define-se quadros para cada animação • Saber o plano de animações: definir quadros • Animações: Arquivos separados • EX: nomemodelo@nomeanima.FBX • Importa-se todos arquivos • Junção – uso - automático
  • 5. Unity3D • Incluir modelo = Import New Asset • Arquivo principal modelo • Animações arquivos separados (nome@anima)
  • 6. Unity3D • Modelo tem constituição variada • Número de meshes, partes, bones, etc • Depende do artista que o fez • Tamanho controlável na importação • Propriedades do modelo • FBX Importer • Scale Factor
  • 8. Unity3D • Importando textura do modelo • Importar BMAP • Material criado automaticamente * • Re-atribuir BMAP para o material
  • 9. Unity3D • Importar animações • Arquivos adicionais • Mesma Escala (fator)* • Animações disponíveis no modelo (cena) • Atribuição animas = automático (mesmo nome@anima) • Anima selecionável: testar
  • 10. Unity3D • Animações disponíveis, como usar? • Criar: • Scripts ativando animações na hora certa • Criar regras para animações básicas • Com velocidade = andando • Sem velocidade = parado (idle) • Comandos – iniciam animações • Botão pulo = pular • Eventos • Atingido = anima / morre • Etc
  • 11. Unity3D • Usando Modelo como player • Atribuir tipo de colisão • (Rigidbody ou CharacterController) • Criar códigos para movimento (script) • EX: Player com CharacterController • Inserir CharacterController no modelo • Criar script básico de controle do movimento
  • 12. Unity3D • Código base – move (CharacterController) var forca_move : Vector3; var forca_rota : Vector3; var velocidade = 20.0; var gravidade = 0.5; function Update () { forca_move.x = Input.GetAxis("Horizontal") * Time.deltaTime * velocidade; forca_move.y -= gravidade * Time.deltaTime; forca_move.z = Input.GetAxis("Vertical") * Time.deltaTime * velocidade; forca_move = transform.TransformDirection(forca_move); pointer = GetComponent(CharacterController); pointer.Move(forca_move); forca_rota.y = Input.GetAxis("Mouse X") * 2; transform.Rotate(forca_rota); }
  • 13. Unity3D • Animações, definir regras básicas • Movimento = velocidade = anima anda //ANIMACAO if (Mathf.Abs(forca_move.z) > 0) { //animation.CrossFade("walk"); animation.Play("walk"); } else { //animation.CrossFade("idle"); animation.Play("idle"); }
  • 14. Unity3D • Animações por comandos específicos • Pulo = anima pular var no_chao : boolean; if (Input.GetKeyDown("space") && (no_chao)) { forca_move.y = forca_pulo; animation.CrossFade("jump"); } pointer.Move(forca_move); no_chao = pointer.isGrounded; // APÓS O MOVE
  • 15. Unity3D • Necessário criar / aprimorar regras • Se pulando não entra na regra de animação por velocidade • Como fazer? Variáveis. EX: var pulando • Só acessa regra velocidade senão pulando • Algumas animações tem que ser protegidas, priorizadas • Alguns casos, travando inclusive controles adicionais do player
  • 16. Unity3D if (Input.GetKeyDown("space") && (no_chao)) { forca_move.y = forca_pulo; animation.CrossFade("jump"); pulando = 1; } ... if (no_chao && pulando == 1) { pulando = 0; }
  • 17. Unity3D • Sincronizar momento da animação com ação • Atirar no momento certo da animação • Pular no momento certo da animação • Vários modos de fazê-lo • Evento vinculado na animação* • Checar tempo atual da animação e disparar código if ((animation["jump"].time >= 0.2 ) && (pulando == 1)) { forca_move.y = forca_pulo; pulando = 2; }
  • 18. Unity3D • Segurando uma animação (pulo = no ar) • Possível usar animações separadas para os estágios: • pular, no ar, volta chão • Possível codificar para manter animação em um ponto: if (pulando == 2 && animation["jump"].time >= 0.6 ) animation["jump"].time = 0.6; if (no_chao && pulando >= 2) { if (animation["jump"].time < 0.9) { pulando = 3; } else { pulando = 0; } }