SlideShare uma empresa Scribd logo
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 Aula anima-modelos

Aula1 intro
Aula1  introAula1  intro
Aula1 intro
Marcos Batista
 
Introdução ao cocos sharp
Introdução ao cocos sharpIntrodução ao cocos sharp
Introdução ao cocos sharp
José Farias
 
Aula modelos
Aula modelosAula modelos
Aula modelos
Marcos Batista
 
Aula maps
Aula mapsAula maps
Aula maps
Marcos Batista
 
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
Diego 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 Jam
André Espeiorin
 
Unity3d
Unity3dUnity3d
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
 
UTools Unite Brasil
UTools Unite BrasilUTools Unite Brasil
UTools Unite Brasil
Alexandre de Sá
 
Desenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael JeffmanDesenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael Jeffman
Tchelinux
 
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-x
Pedro 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 HTML5
Willian Molinari
 
Aula6 colisao2
Aula6 colisao2Aula6 colisao2
Aula6 colisao2
Marcos Batista
 
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
jonathanblacknight
 
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
iMasters
 
Aula menus
Aula menusAula menus
Aula menus
Marcos Batista
 
Aula cameras
Aula camerasAula cameras
Aula cameras
Marcos Batista
 
Aula particulas
Aula particulasAula particulas
Aula particulas
Marcos Batista
 

Semelhante a Aula anima-modelos (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

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

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

APOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdfAPOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdf
CarlosEduardoSola
 
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
Escola Municipal Jesus Cristo
 
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptxDIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
cleanelima11
 
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptxSlides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
LuizHenriquedeAlmeid6
 
curso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdfcurso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdf
LeandroTelesRocha2
 
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
"Está o lascivo e   doce passarinho " de Luís Vaz de Camões"Está o lascivo e   doce passarinho " de Luís Vaz de Camões
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
goncalopecurto
 
Apresentação Formação em Prevenção ao Assédio
Apresentação Formação em Prevenção ao AssédioApresentação Formação em Prevenção ao Assédio
Apresentação Formação em Prevenção ao Assédio
ifbauab
 
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdfAPOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
RenanSilva991968
 
o que está acontecendo no Rio grande do Sul
o que está acontecendo no Rio grande do Sulo que está acontecendo no Rio grande do Sul
o que está acontecendo no Rio grande do Sul
CarlaInsStaub
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
cristianofiori1
 
História Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco LeiteHistória Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco Leite
profesfrancleite
 
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptxMÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
Martin M Flynn
 
Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)
Centro Jacques Delors
 
Aproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividadeAproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividade
Ligia Galvão
 
Sequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental ISequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental I
Letras Mágicas
 
O autismo me ensinou - Letícia Butterfield.pdf
O autismo me ensinou - Letícia Butterfield.pdfO autismo me ensinou - Letícia Butterfield.pdf
O autismo me ensinou - Letícia Butterfield.pdf
Letícia Butterfield
 
Acróstico - Reciclar é preciso
Acróstico   -  Reciclar é preciso Acróstico   -  Reciclar é preciso
Acróstico - Reciclar é preciso
Mary Alvarenga
 
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir"  - Jorge e MateusAtividade - Letra da música "Tem Que Sorrir"  - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Mary Alvarenga
 
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptxCIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
MariaSantos298247
 

Último (20)

APOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdfAPOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdf
 
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
 
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptxDIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
 
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptxSlides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
 
curso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdfcurso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdf
 
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
"Está o lascivo e   doce passarinho " de Luís Vaz de Camões"Está o lascivo e   doce passarinho " de Luís Vaz de Camões
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
 
Apresentação Formação em Prevenção ao Assédio
Apresentação Formação em Prevenção ao AssédioApresentação Formação em Prevenção ao Assédio
Apresentação Formação em Prevenção ao Assédio
 
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdfAPOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
 
o que está acontecendo no Rio grande do Sul
o que está acontecendo no Rio grande do Sulo que está acontecendo no Rio grande do Sul
o que está acontecendo no Rio grande do Sul
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
 
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
Atividade-9-8o-ano-HIS-Os-caminhos-ate-a-independencia-do-Brasil-Brasil-Colon...
 
História Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco LeiteHistória Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco Leite
 
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptxMÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
 
Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)
 
Aproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividadeAproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividade
 
Sequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental ISequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental I
 
O autismo me ensinou - Letícia Butterfield.pdf
O autismo me ensinou - Letícia Butterfield.pdfO autismo me ensinou - Letícia Butterfield.pdf
O autismo me ensinou - Letícia Butterfield.pdf
 
Acróstico - Reciclar é preciso
Acróstico   -  Reciclar é preciso Acróstico   -  Reciclar é preciso
Acróstico - Reciclar é preciso
 
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir"  - Jorge e MateusAtividade - Letra da música "Tem Que Sorrir"  - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
 
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptxCIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
 

Aula anima-modelos

  • 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; } }