Iteração de animações!
3 participantes
Página 1 de 1
Iteração de animações!
Ola pessoal, tenho uma duvida relacionado a animação para um game FPS especificamente!
Bom, estou criando umas animações para um game FPS e me deparei com a seguinte duvida. Estou animando uma pistola com Idle, Fire, Reload, ETC...
A duvida é a seguinte. Eu animo o personagem junto com a arma? sendo que em jogo(UNITY) eu programei pra quando eu pegar uma arma (Pistola) ela será instanciada na mão do personagem. Ou seja, não é a mesma arma que foi feita a animação. Alguma ideia de qual seria a melhor forma de fazer isso?
OBS: Pesquisei os topicos do forum antes, mas não encotrei algo relacionado que pudesse me ajudar!
OBS2: Uso Blender para as animações.
De já, Obrigado!
Bom, estou criando umas animações para um game FPS e me deparei com a seguinte duvida. Estou animando uma pistola com Idle, Fire, Reload, ETC...
A duvida é a seguinte. Eu animo o personagem junto com a arma? sendo que em jogo(UNITY) eu programei pra quando eu pegar uma arma (Pistola) ela será instanciada na mão do personagem. Ou seja, não é a mesma arma que foi feita a animação. Alguma ideia de qual seria a melhor forma de fazer isso?
OBS: Pesquisei os topicos do forum antes, mas não encotrei algo relacionado que pudesse me ajudar!
OBS2: Uso Blender para as animações.
De já, Obrigado!
Madson- Iniciante
- PONTOS : 2836
REPUTAÇÃO : 7
Respeito as regras :
Re: Iteração de animações!
Existe alguma razão específica pra não usar a arma que já foi animada com o personagem?
Já está na hierarquia do esqueleto, já está devidamente rigada e animada, eu só desabilitaria a mesh e habilitaria novamente caso o jogador selecionasse ou pegasse a arma.
Além disso, fazendo dessa forma seria o mais ideal do ponto de vista da programação, algo como um object pooling, pois você não estaria instanciando objetos e sim já os teria na cena.
Outro ponto, evite instanciar objetos sem necessidade, tendo como exemplo o CSGO, assim que um player dropar uma arma e outro pegar, você manda a arma já instanciada pra ele, e só cria uma nova caso não tenha nenhuma instanciada disponível. Isso já vai evitar uma possível chamada do GC, o que vai ajudar na estabilidade do jogo.
Já está na hierarquia do esqueleto, já está devidamente rigada e animada, eu só desabilitaria a mesh e habilitaria novamente caso o jogador selecionasse ou pegasse a arma.
Além disso, fazendo dessa forma seria o mais ideal do ponto de vista da programação, algo como um object pooling, pois você não estaria instanciando objetos e sim já os teria na cena.
Outro ponto, evite instanciar objetos sem necessidade, tendo como exemplo o CSGO, assim que um player dropar uma arma e outro pegar, você manda a arma já instanciada pra ele, e só cria uma nova caso não tenha nenhuma instanciada disponível. Isso já vai evitar uma possível chamada do GC, o que vai ajudar na estabilidade do jogo.
Fagner- Moderador
- PONTOS : 4442
REPUTAÇÃO : 667
Áreas de atuação : Modelagem 3D, Programação.
Respeito as regras :
Re: Iteração de animações!
Madson escreveu:A duvida é a seguinte. Eu animo o personagem junto com a arma? sendo que em jogo(UNITY) eu programei pra quando eu pegar uma arma (Pistola) ela será instanciada na mão do personagem. Ou seja, não é a mesma arma que foi feita a animação. Alguma ideia de qual seria a melhor forma de fazer isso?
Tanto pra primeira quanto pra terceira pessoa, eu uso uma animação pra parte inferior do corpo e uma animação pra parte superior ( geralmente uma pose com dois quadros ) pra cada tipo de arma e uso IK pra corrigir a posição das mãos na arma.
Uso dois avatar masks e layers separadas no animator.
Cada arma tem suas próprias referências de IK (posição/rotação da mão esquerda, altura da mão direita, muzzle, etc).
Você pode ate usar o ik da mão direita pra fazer um recoil com força programável se quiser.
Pode não ser a abordagem mais simples, mas é muito flexível e me satisfaz pra jogos em primeira e terceira pessoa há um bom tempo.
Re: Iteração de animações!
Fagner escreveu:Existe alguma razão específica pra não usar a arma que já foi animada com o personagem?
Já está na hierarquia do esqueleto, já está devidamente rigada e animada, eu só desabilitaria a mesh e habilitaria novamente caso o jogador selecionasse ou pegasse a arma.
Além disso, fazendo dessa forma seria o mais ideal do ponto de vista da programação, algo como um object pooling, pois você não estaria instanciando objetos e sim já os teria na cena.
Outro ponto, evite instanciar objetos sem necessidade, tendo como exemplo o CSGO, assim que um player dropar uma arma e outro pegar, você manda a arma já instanciada pra ele, e só cria uma nova caso não tenha nenhuma instanciada disponível. Isso já vai evitar uma possível chamada do GC, o que vai ajudar na estabilidade do jogo.
Não necessariamente, porem são muitas armas divididas em "Primaria, secundaria, etc...". Por esse motivo eu optei por "instanciar" dentro do GameObject da mão a arma!
O fato de eu não utilizar a arma que foi animada junto com os braços do personagem é justamente por ter um Prefab da arma preparada com código e configurações adequadas para cada uma. Bom, talvez eu utilize o mesmo modelo...Vou estudar aqui a melhor forma pra isso!
Obrigado!
Madson- Iniciante
- PONTOS : 2836
REPUTAÇÃO : 7
Respeito as regras :
Re: Iteração de animações!
artplayer escreveu:Madson escreveu:A duvida é a seguinte. Eu animo o personagem junto com a arma? sendo que em jogo(UNITY) eu programei pra quando eu pegar uma arma (Pistola) ela será instanciada na mão do personagem. Ou seja, não é a mesma arma que foi feita a animação. Alguma ideia de qual seria a melhor forma de fazer isso?
Tanto pra primeira quanto pra terceira pessoa, eu uso uma animação pra parte inferior do corpo e uma animação pra parte superior ( geralmente uma pose com dois quadros ) pra cada tipo de arma e uso IK pra corrigir a posição das mãos na arma.
Uso dois avatar masks e layers separadas no animator.
Cada arma tem suas próprias referências de IK (posição/rotação da mão esquerda, altura da mão direita, muzzle, etc).
Você pode ate usar o ik da mão direita pra fazer um recoil com força programável se quiser.
Pode não ser a abordagem mais simples, mas é muito flexível e me satisfaz pra jogos em primeira e terceira pessoa há um bom tempo.
Estou a utilizar o IK para correção da posição, mas a questão é que a arma em sí tem uma animação junto ao personagem (apenas os braços). O recoil esta sendo justamente com a mão direita!
Madson- Iniciante
- PONTOS : 2836
REPUTAÇÃO : 7
Respeito as regras :
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos