MAC0499 – Trabalho de
Formatura Supervisionado
Proposta para o projeto
Alunos:
Fernando Bertolli Petroni NUSP: 4894516
Gustavo
Menezes Ponte Moreira NUSP: 4894902
Rodrigo
dos Santos Lima NUSP: 4894732
Supervisor:
Flávio
Soares Corrêa da Silva
Tema
da monografia:
Projeto
Simulacro: Usando ragdoll para simular a anatomia
humana
Tipo
de trabalho: Projeto
Introdução: O que é ragdoll?
Em "engines" de jogos de computador, "ragdoll physics" são um tipo
de animação procedural que é frequentemente
usada como um substituto para as tradicionais animações de morte estáticas.
Jogos mais antigos usavam sequências de morte para personagens criadas a mão,
trazendo a vantagem de baixo uso de CPU, pois o necessário para animar um
personagem morrendo é escolher uma animação dentro de um conjunto pré-definido.
Com o aumento do poder dos
computadores, tornou-se possível se fazer simulações físicas limitadas em tempo
real. Um "boneco ragdoll" é uma coleção de
múltiplos corpos rígidos (cada um está ordinariamente preso a
um "bone" no esqueleto do sistema de
animação gráfica) atado juntamente a um sistema de restrições que limitam o
quanto um "bone" pode se mover em
relação a outro.
O termo "ragdoll"
vem do fato de que os sistemas articulados, devido as
restrições definidas, tendem a ter pouca ou nenhuma rigidez muscular, tanto nas
junções quanto no esqueleto, levando o personagem a acabar mais como um boneco
de trapos (ragdoll) do que como um ser humano real,
terminando em uma posição muitas vezes improvável e muitas vezes cômicas.
Objetivo:
"É sempre uma questão de provar o real através do imaginário, de provar a
verdade pelo escândalo, de provar o trabalho por intermédio da greve, de provar
o capital pela revolução" (BAUDRILLARD)
Nosso objetivo é criar uma base para
a simulação do comportamento cinético do corpo humano, tornando mais fáceis
implementações mais complexas de tais simulações.
Atividades já
realizadas:
·
Instalamos e
configuramos o Microsoft Visual Studio e a biblioteca
gráfica Ogre3D;
·
Aprendemos a
usar o Blender, programa que possibilitará a criação
de meshes para utilização em nosso aplicativo;
·
Aprendemos
alguns conceitos básicos da biblioteca Ogre3D.
Cronograma de atividades para o segundo
semestre:
·
Julho:
1- Criação do modelo humanóide, no
Blender.
2- Estender as classes que representam as juntas, no Ogre3D,
para representar as articulações do corpo humano. Criar uma classe que
represente esse modelo.
3- Criar um construtor para essa classe que a partir de um mesh
construa um esqueleto e gere o respectivo boneco com as articulações.
·
Agosto /
Setembro:
4- Criar uma classe para
representar os "músculos" do personagem.
5- Criar alguma forma de visualizar e alterar o modelo criado. (poder mudar caracteristicas dos ossos, articulações e músculos). De preferencia com uma interface gráfica.
6- Definir uma linguagem simples de scripts para enviar comandos aos músculos
do personagem.
7- Interpretar essa linguagem.
·
Outubro:
8- Usando a linguagem descrita
acima, criar movimentos (sequências de comandos dados
aos músculos).
9- Criar uma linguagem de script que utilizará os movimentos descritos acima. Essa
será a linguagem usada pelo usuário final da aplicação.
·
Novembro:
10- Criar um cenário e preparar a
apresentação do aplicativo.
11-
Escrever a monografia.
Estrutura da
monografia:
1. Parte Objetiva
1.
Introdução:
descreveremos nossas motivações e objetivos, os principais problemas a serem
resolvidos e as possíveis utilidades de nosso projeto.
2.
Conceitos e
tecnologias estudadas: faremos uma apresentação da área de nossa monografia
através das tecnologias disponíveis para solução dos problemas encontrados.
3.
Atividades
realizadas: descreveremos a metodologia utilizada para a realização do trabalho
e as atividades realizadas.
4.
Resultados e
produtos obtidos: apresentaremos os principais resultados do trabalho
realizado, assim como o que foi produzido no período.
5.
Conclusões:
discorreremos sobre como nosso projeto poderá ser utilizado em eventuais
extensões, e as áreas nas quais ele poderá ter aplicação.
6.
Bibliografia:
seção com as produções literárias, tutoriais e APIs
consultadas.
2. Parte Subjetiva
1. desafios e frustrações encontrados;
2.
lista das
disciplinas cursadas no BCC mais relevantes para o trabalho;
3.
interação com
os demais membros da equipe;
4.
diferenças
notadas entre a forma de
cooperação com colegas do BCC nas tarefas em grupo das disciplinas e a forma de
trabalho conjunto em empresa;
5.
observações
sobre a aplicação de conceitos estudados nos cursos no contexto prático de
aplicações reais.