Quais aspectos devo levar em consideração na criação de classes de animação e renderização de personagens, se eu quiser ter membros destacáveis? Eu desenvolvi um sistema corporal detalhado que pode ter tudo definido no sistema nervoso. Estou buscando algo semelhante ao nível de detalhe de dano encontrado na Fortaleza dos Anões. Por exemplo, quando um personagem sofre dano em seu braço, há uma chance de dano no nervo que pode desativar todo o braço. Ou eles poderiam perder o braço completamente.
Eu tenho um sistema escrito para lidar com os dados parte disso. Cada personagem tem um tronco, que possui apêndices e partes internas. Cada apêndice também pode ter apêndices filhos e partes internas. Os anexos filhos serão desativados / removidos se um anexo pai for desativado / removido. Se algum dos apêndices desativados / removidos ou peças internas forem necessários para a vida toda, o personagem morrerá em breve.
O que estou trabalhando agora é a parte de desenho / animação disso. Como defino animações para saber quais são permitidas, dado o estado atual do corpo (falta de braços / pernas e assim por diante)? Como configuro o sistema de desenho para não desenhar membros ausentes? Cada membro / apêndice tem que ter seu próprio modelo (eu gostaria de desenhar apêndices cortados no chão)?
O sistema simples do qual estou migrando (acabei de escrevê-lo para testar) importa todos os quadros-chave de uma animação como modelos completos para um VBO (juntamente com a contagem de vértices para onde os quadros-chave iniciam / param). Ele não importa ou utiliza os ossos definidos no Blender e não interpola entre os quadros.
Essa é provavelmente uma pergunta muito grande, então também estou procurando recursos que possam me levar aonde eu preciso ir.
EDITAR
Pergunto sobre a animação, sabendo quais membros está animando, porque gostaria de configurá-la para executar uma animação alternativa se um membro necessário estiver faltando. Depois de pensar nisso, imagino que realizaria essa verificação antes de ativar uma animação e ativaria a animação apropriada naquele momento.
Sua melhor opção é cortar os membros e usar vários submodelos, dependendo do estado atual das feridas. Sua abordagem de usar um VBO por quadro-chave é apenas um exagero; use um sistema de animação esquelética e reproduza animações diferentes, dependendo do dano recebido (mancando com uma perna, rastejando sem as duas pernas, etc.).
A Valve publicou um bom conjunto de slides sobre as feridas e desmembramento em L4D2. Eu realmente gosto da abordagem de usar um modelo para órgãos e ossos e recortar o modelo "skin" com base em projeções de textura de cortes, tiros, etc.
fonte