gera¸c˜ao autom´atica de popula¸c˜oes de personagens virtuaisatavares/dissertacao_andre.pdf ·...

87
Andr´ e Tavares da Silva Gera¸ ao Autom´ atica de Popula¸ c˜oesde Personagens Virtuais ao Leopoldo 2005

Upload: others

Post on 25-Jan-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

Andre Tavares da Silva

Geracao Automatica de Populacoes de

Personagens Virtuais

Sao Leopoldo

2005

Page 2: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

Andre Tavares da Silva

Geracao Automatica de Populacoes de

Personagens Virtuais

Dissertacao submetida a avaliacao como re-quisito parcial para a obtencao do grau deMestre em Computacao Aplicada

Orientador:

Soraia Raupp Musse

Sao Leopoldo

2005

Page 3: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

RESUMO

Este trabalho apresenta um modelo para gerar, de forma simples e rapida, umagrande quantidade de personagens secundarios para uso em jogos, simulacoes em temporeal e filmes de computacao grafica. O objetivo deste modelo e gerar simultaneamenteuma diversidade de humanos virtuais realistas, e capazes de serem animados. Para isto,sao utilizados alguns templates e um conjunto mınimo de informacoes para criacao dasgeometrias dos agentes, sem necessidade de grande intervencao do usuario ou conheci-mento previo de antropometria. A criacao da diversidade populacional utiliza o modelode classificacao de tipo fısico denominado de somatotipo, gerando personagens visual-mente realistas. Mais ainda, estes podem ser automaticamente animados, visto que omodelo considera as malhas geometricas em conexao com seus esqueletos. A fim de con-textualizar este trabalho no estado-da-arte, sao mostrados alguns trabalhos relacionadosa criacao automatica de humanos virtuais. Para validar o modelo proposto, foi cons-truıdo um prototipo e sao apresentados alguns resultados, mostrando alguns personagensvirtuais resultantes deste trabalho.

Page 4: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

LISTA DE FIGURAS

1 Diferenca na geometria do modelo devido a movimentacao do braco (SCHE-EPERS et al., 1997) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2 Modelo capturado baseado em imagens (HILTON et al., 1999): a esquerdaas imagens de entrada e a direita o modelo reconstruıdo . . . . . . . . . . . 15

3 Humanoides modelados por diferentes escalas (AZUOLA et al., 1994) . . . . 17

4 Modelos gerados por alteracao dos parametros (SEO; MAGNENAT-THALMAN, 2003) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

5 Variacao de um corpo pela alteracao de peso e altura (ALLEN; CURLESS;POPOVIC, 2002) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

6 Populacao inicial (LEWIS, 2000) . . . . . . . . . . . . . . . . . . . . . . . . 20

7 Quatro modelos com diferentes formas e texturas (LEE; MAGNENAT-THALMANN, 2001). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

8 Variacoes de um mesmo modelo (MODESTO; GIBBS; RANGARAJU, 2001) 22

9 Diagrama de formas corporais extremas. . . . . . . . . . . . . . . . . . . . 30

10 Malhas do template feminino adulto. . . . . . . . . . . . . . . . . . . . . . 36

11 Esqueleto de um humanoide. . . . . . . . . . . . . . . . . . . . . . . . . . . 37

12 Movimento de uma junta sem deformacao (a) e com deformacao (b). . . . 38

13 Passos para criacao de diversidade populacional. . . . . . . . . . . . . . . . 41

14 Exemplo de arquivo de configuracao de template . . . . . . . . . . . . . . . 44

15 Passos para criacao de diversidade populacional. . . . . . . . . . . . . . . . 53

16 Quatro conjuntos de materiais diferentes. . . . . . . . . . . . . . . . . . . . 54

17 Diferentes caminhadas resultantes de valores diferentes de raiva, medo efelicidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

18 Interfaces para geracao da populacao e seus estados emocionais . . . . . . . 60

19 Foto e geometria de homem forte (altura: 173,2 cm; peso: 80,7 Kg; soma-totipo: 2-8-1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

20 Modelo geometrico de um mesomorfo dominante (altura: 173,2 cm; peso:85,0 Kg; somatotipo: 1

2-91

2-12) . . . . . . . . . . . . . . . . . . . . . . . . . 63

21 Foto e geometria de um homem magro (altura: 182,5 cm; peso: 51,4 Kg;somatotipo: 11

2-2-71

2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

Page 5: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

22 Modelo geometrico de um endomorfo dominante (altura: 182,5 cm; pesoKg: 102,0; somatotipo: 9-1-1

2) . . . . . . . . . . . . . . . . . . . . . . . . . 64

23 Foto e geometria de um homem forte e gordo (altura: 171,5 cm; peso Kg:100,5; somatotipo: 4-8-1

2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

24 Modelo geometrico de um homem mediano (altura: 171,5 cm; peso Kg:63,8; somatotipo: 4-4-3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

25 Foto e geometria de uma mulher magra (altura: 176,1 cm; peso Kg: 55,4;somatotipo: 11

2-31

2-51

2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

26 Modelo geometrico de uma mulher forte (altura: 176,1 cm; peso Kg: 75,0;somatotipo: 11

2-7-2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

27 Foto e geometria de uma mulher normal (altura: 168,2 cm; peso Kg: 56,5;somatotipo: 41

2-21

2-31

2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

28 Modelo geometrico de uma mulher gorda (altura: 168,2 cm; peso Kg: 79,0;somatotipo: 81

2-2-1

2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

29 Foto e geometria de uma mulher mediana (altura: 161,0 cm; peso Kg: 63,7;somatotipo: 6-4-1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

30 Modelo geometrico de uma mulher gorda (altura: 161,0 cm; peso Kg: 70,0;somatotipo: 81

2-2-1

2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

31 Personagem de baixa resolucao . . . . . . . . . . . . . . . . . . . . . . . . 69

32 Personagem nao humano . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

33 Populacao sem textura no corpo . . . . . . . . . . . . . . . . . . . . . . . . 72

34 Populacao com textura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

35 Mostra “Humanos Virtuais” no Santander Cultural . . . . . . . . . . . . . 79

Page 6: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

LISTA DE ABREVIATURAS

BD - Dimensao do modelo geometrico base (Base Dimension)CH - Altura do novo modelo (Customized-model Height)HR - Razao entre altura do template e novo modelo (Height Ratio)HWR - Estatura dividida pela raıs cubica do peso (Height-Weight Ratio)IMC - Indice de Massa CorporalND - Nova Dimensao (New Dimension)NS - Novo Somatotipo (New Somatotype)PCA - Principal Component AnalysisPS - Medidas da Parte (Part Size)RBF - Radial Basis FunctionTH - Altura do Template (Template Height)TW - Peso do template (Template Weight)

Page 7: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

SUMARIO

1 Introducao 8

2 Revisao Bibliografica 12

2.1 Modelagem por construcao manual . . . . . . . . . . . . . . . . . . . . . . 12

2.2 Modelagem por captura e reconstrucao . . . . . . . . . . . . . . . . . . . . 14

2.3 Modelagem por interpolacao ou variacao de geometria existente . . . . . . 16

2.4 Contexto deste trabalho no estado-da-arte . . . . . . . . . . . . . . . . . . 22

3 Conceitos Basicos 26

3.1 Classificacao corporal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.1.1 Somatotipo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.1.2 Metodo de somatotipo Heath-Carter . . . . . . . . . . . . . . . . . 31

3.1.3 Obtendo o somatotipo . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.2 Consideracoes sobre modelagem geometrica de humanos virtuais . . . . . . 35

4 Modelo 39

4.1 Definicao de dados iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

4.2 Escolha do template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.3 Definicao dos novos somatotipos . . . . . . . . . . . . . . . . . . . . . . . . 45

4.4 Calculo de influencia dos somatotipos dominantes . . . . . . . . . . . . . . 48

4.5 Variacao do modelo geometrico base . . . . . . . . . . . . . . . . . . . . . 49

4.6 Criacao da nova geometria . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

4.7 Outros aspectos do modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

4.7.1 Animacao dos personagens virtuais . . . . . . . . . . . . . . . . . . 54

5 Prototipo e Resultados 58

5.1 Analise Microscopica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

5.1.1 Personagens nao humanos . . . . . . . . . . . . . . . . . . . . . . . 69

5.2 Analise Macroscopica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Page 8: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

5.3 Desempenho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

6 Conclusao 76

6.1 Restricoes e dificuldades . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6.1.1 Criacao dos templates . . . . . . . . . . . . . . . . . . . . . . . . . 80

6.1.2 Deformacoes locais . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

6.1.3 Personagens distintos . . . . . . . . . . . . . . . . . . . . . . . . . . 81

6.2 Trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Referencias

Page 9: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

8

1 INTRODUCAO

O uso de modelos de humanos virtuais em aplicacoes de computacao grafica em

tempo real, como jogos e simulacao, tem sido cada vez mais comum na atualidade. Antes

do advento de placas graficas aceleradoras 3D (capazes de processar centenas de milhares

de polıgonos por segundo), a restricao no uso de personagens humanos tridimensionais

era a limitacao tecnologica para visualizacao de uma grande quantidade de geometrias.

Modelos de humanos virtuais so eram utilizados em producoes nao interativas, como filmes

onde o tempo computacional para geracao de imagens nao necessita de tempo real.

No entanto, com o desenvolvimento de modelos de animacao de multidoes, bastante

usados pela industria cinematografica (por exemplo: Antz, Bugs Life, The Lord of the

Rings, Troy e recentemente, The Polar Express), a modelagem de um grande numero de

personagens virtuais passou a ser um problema a ser resolvido. Mesmo quando trata-se de

aplicacoes interativas, como por exemplo em jogos e simulacoes, a necessidade de geracao

de multiplos personagens que contenham diversidade geometrica e um problema a ser

tratado.

Assim sendo, e crescente o numero de pesquisas para geracao automatica de mo-

delos geometricos de humanos virtuais, como sera apresentado no capıtulo 2. No entanto,

ate o momento, nao foi criado um modelo no qual possa ser gerado de forma rapida e

facil uma grande quantidade de modelos geometricos convincentes visualmente, sem inter-

vencao do usuario e sem necessidade de conhecimentos previos sobre anatomia humana.

Este e o principal problema que visa-se investigar neste trabalho.

Page 10: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

9

Normalmente, formas de pessoas com aspectos realistas sao criadas atraves de um

processo exaustivo e difıcil, devido a complexidade do corpo humano. Se uma aplicacao

necessita de um numero muito grande de personagens virtuais, formados por grupos e

multidoes, e necessaria uma diversidade de formas e animacoes para popular este ambiente

com personagens de aparencia realista. Neste caso, para criar esta variedade da maneira

tradicional, os artistas tem de criar manualmente esta diversidade, aumentando assim a

complexidade e o tempo para realizar esta tarefa.

Outra forma de fazer isto e pela aquisicao de modelos de corpos de pessoas reais.

Uma delas e atraves de scanners 3D, um equipamento bastante caro que captura pontos

do modelo real. Depois de feita a captura, os pontos gerados terao de passar por um

processo a fim de transformar a nuvem de pontos obtidos pelo scanner em um modelo

geometrico. Depois, os espacos vazios criados por oclusao de algumas partes terao de

ser preenchidos. Existem tambem outras tecnicas de captura baseadas em fotos e vıdeos,

mas em todos estes casos, faz-se necessario um pos-processamento na estrutura gerada a

fim de obter personagens que possam ser animados posteriormente. Isto deve-se ao fato

de que a maioria dos metodos gera e/ou manipula a malha geometrica dos humanoides

sem conecta-los com os esqueletos. Este processo necessita ser realizado posteriormente

de forma manual.

Outra maneira de solucionar o problema da criacao de uma diversidade populacio-

nal, e atraves da modificacao de modelos existentes. Neste caso, as alteracoes podem ser

feitas realizando uma interpolacao entre dois ou mais modelos geometricos ou aplicando

funcoes de deformacao em um modelo geometrico base. Neste caso, os resultados podem

nao ser visualmente realistas, gerando resultados nao esteticamente plausıveis.

Sendo assim, este trabalho propoe nao somente a criacao de uma diversidade de

formas de corpos de humanos virtuais, mas tambem evitar produzir personagens nao es-

teticamente aceitaveis (embora saiba-se que, em se tratando de estetica, o que se julga

aceitavel ou nao e bastante subjetivo). Por isto, optou-se por utilizar o modelo de soma-

Page 11: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

10

totipo, que na area da cineantropometria visa classificar tipos fısicos de seres humanos.

O objetivo e utilizar-se padroes existentes da vida real para geracao de humanos virtuais

realistas. Para gerar uma diversidade populacional, o modelo apresentado neste trabalho

utiliza um conjunto mınimo de dados antropometricos e modelos geometricos base, cujas

diferentes partes do corpo variam de forma nao uniforme gerando uma grande variedade de

personagens, respeitando os parametros de entrada. Mais ainda, os modelos geometricos

gerados sao considerados em associacao com os esqueletos e podem ser automaticamente

animados.

Os principais objetivos deste trabalho sao:

• Gerar simultaneamente, de acordo com um conjunto mınimo de dados antro-

pometricos informados, uma grande quantidade de modelos geometricos de huma-

nos virtuais diferentes uns dos outros, possibilitando a criacao de todas as formas

possıveis de corpos;

• Criar personagens validos visualmente baseados em um modelo biologico consoli-

dado para classificacao de corpos, denominado de somatotipo;

• Possibilitar a animacao automatica dos personagens, atraves da conexao da malha

poligonal do humanoide e o esqueleto. Para prover esta animacao, utilizou-se tres

parametros intrınsecos aos personagens quando da sua criacao, que influencia a sua

animacao, de maneira a gerar movimentos diferentes. Para tanto, foi utilizado o mo-

delo computacional MECA1 baseado em conceitos propostos por Darwin (DARWIN,

1872) que descreve os estados emocionais atraves de tres variaveis principais: medo,

raiva e felicidade;

• Implementar uma ferramenta de prototipo para validacao do modelo apresentado.

• Analisar os resultados gerados, verificando se estao de acordo com o objetivo dese-

jado. Para isto, e realizada uma analise microscopica a fim de verificar individual-

1Desenvolvido no laboratorio CROMOS-UNISINOS.

Page 12: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

11

mente cada personagem criado confrontando-os com os dados de entrada. Tambem

e efetuada uma analise macroscopica, verificando se a populacao criada atinge a

diversidade pretendida.

A contribuicao principal deste trabalho e a criacao de um modelo para formar uma

diversidade de humanos virtuais realistas esteticamente e capazes de serem animados, de

maneira facil e rapida. A principal aplicacao deste modelo e a geracao de personagens

secundarios para jogos, simulacoes e filmes, onde os projetistas podem criar e animar o

maior numero de personagens o mais rapido possıvel.

Este trabalho esta organizado da seguinte forma: No proximo capıtulo sao apre-

sentados alguns trabalhos relacionados a area de modelagem de humanos virtuais. O

capıtulo 3 descreve alguns conceitos importantes para compreensao do modelo proposto.

No capıtulo 4 sera apresentado o modelo proposto neste trabalho para geracao automatica

de diversidade populacional. O capıtulo 5 apresenta alguns resultados e discussoes. No

capıtulo 6 sao apresentadas algumas consideracoes finais.

Page 13: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

12

2 REVISAO BIBLIOGRAFICA

Esse capıtulo destina-se a apresentar alguns dos principais trabalhos relaciona-

dos a modelagem de humanos virtuais, desde a forma mais tradicional de confeccionar

os modelos ate os considerados estado-da-arte na criacao automatica de modelos de hu-

manos virtuais. Devido a grande complexidade da modelagem de corpos humanos es-

teticamente corretos, foram desenvolvidos alguns metodos para auxiliar na modelagem.

Magnenat-Thalmann et al (MAGNENAT-THALMANN; SEO; CORDIER, 2003) classifica

esses metodos em tres categorias: creative, reconstructive e interpolated. Nos metodos da

categoria creative, os modelos geometricos sao gerados atraves de uma construcao manual

realizada principalmente por artistas. Na categoria reconstructive, estao enquadradas to-

dos aqueles metodos cujas geometrias sao obtidas por captura de corpos reais, seja por

scanner, foto ou sequencia de vıdeo. Os metodos interpolated sao aqueles nos quais um ou

mais modelos geometricos sofrem funcoes de transformacao para gerar novas geometrias.

As proximas secoes apresentam alguns trabalhos em cada uma destas categorias, aqui

referenciadas como construcao manual (creative), captura e reconstrucao (reconstructive)

e interpolacao ou variacao de geometria existente (interpolated).

2.1 Modelagem por construcao manual

Esta e a forma mais tradicional de modelagem geometrica, na qual os artistas

moldam a geometria do objeto desejado utilizando softwares especializados (3D Studio

Page 14: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

13

MAX1, Blender2, Maya3 e ZBrush4, por exemplo). Esta e uma tarefa artıstica e necessita

de tecnicas e conhecimento especializado em ferramentas de autoria.

Os modelos multi-camadas, baseados na anatomia humana sao tambem exem-

plos de metodos por construcao manual. Os autores que trabalham com modelos multi-

camadas acreditam que, se forem aplicados em modelos virtuais os mesmos princıpios

usados na natureza, os movimentos serao mais realistas. Neste caso, os corpos sao simu-

lados utilizando ossos, musculos deformaveis e pele, dispostos em sua posicao original.

Wilhelms et al (WILHELMS; GELDER, 1997) apresenta um modelo no qual corpos hu-

manos e de animais sao compostos de ossos, musculos e pele. Os ossos sao representados

por segmentos, os musculos sao formados por cilindros deformaveis ligados aos ossos. Os

musculos modificam automaticamente seu formato na medida em que os ossos sao movi-

mentados. A pele e gerada encobrindo os musculos e se move de acordo com a alteracao

dos mesmos.

Scheepers et al (SCHEEPERS et al., 1997) utilizaram uma tecnica semelhante,

utilizando elipsoides para representar os musculos. Neste trabalho eles envolvem o tronco

e os bracos de um humanoide com musculos para demonstrar o modelo. Nedel e Thalmann

(NEDEL; THALMANN, 1998) apresentam um modelo no qual os musculos sao compostos

por duas camadas, compostas por linhas de acao e por uma forma volumetrica, utilizando

um sistema massa-mola.

1http://www.discreet.com2http://www.blender.org3http://www.aliaswavefront.com4http://pixologic.com

Page 15: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

14

Figura 1: Diferenca na geometria do modelo devido a movimentacao do braco (SCHEE-

PERS et al., 1997)

2.2 Modelagem por captura e reconstrucao

Alguns trabalhos reconstroem o modelo geometrico a partir de scanners 3D, fotos

ou vıdeo de pessoas reais. Este metodo e bastante eficaz na criacao de modelos humanos

com aparencia realista, mas dificilmente oferece algum controle para o usuario, tornando

difıcil uma modificacao do modelo final. Nesta secao serao apresentados alguns trabalhos

que utilizam captura de corpos humanos para reconstrucao de modelos geometricos.

Com o advento do scanner 3D, que permitiu a captura de corpos de pessoas, foi

possıvel o uso de geometrias de pessoas reais para serem utilizadas em sistemas compu-

tacionais. Este tipo de scanner emite raios luminosos que tocam a superfıcie do corpo e

refletem, sendo recebidos pelo scanner, gerando assim, um conjunto de pontos. Alguns

metodos tem sido investigados de maneira a prover a geracao de polıgonos baseados em

nuvens de pontos (AMENTA; BERN, 1998; AMENTA; KIL, 2004). O objetivo e a extracao

de um modelo geometrico capaz de ser animado e visualizado. Tambem foram realiza-

das pesquisas especıficas para solucionar problemas de preenchimento de espacos vazios

(devido a oclusao de algumas partes) e para reduzir as deformacoes causadas por falta

de fidelidade ou conflito entre as partes (ruıdo). Dekker (DEKKER, 2000), por exemplo,

utilizou uma serie de informacoes anatomicas sobre o corpo humano para otimizar, com-

pletar e segmentar dados de scanners 3D a fim de gerar as malhas de corpos humanos

para a industria de vestuario.

Page 16: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

15

Kakadiaris e Metaxas (KAKADIARIS; METAXAS, 1995) utilizaram imagens bidi-

mensionais retiradas de tres vistas ortogonais entre si, ajustando um modelo geometrico

base para gerar modelos geometricos 3D. Os templates sao formados por um modelo

geometrico formado por segmentos nos quais as alteracoes sao feitas a partir dos tama-

nhos encontrados em cada uma das partes que representam os segmentos nas imagens.

Plaenkers et al (PLANKERS; FUA; D’APUZZO, 1999) utilizou sequencias de vıdeo

estereo para aquisicao de modelos de partes de um corpo humano. Os movimentos de

uma pessoa, como por exemplo o deslocamento do braco de uma pessoa enquanto ela

caminha, sao gravados em uma sequencia de vıdeo. O programa extrai automaticamente

a informacao do vıdeo gerado e faz o rastreamento do contorno do corpo. O problema e

resolvido em dois passos: primeiro, e extraıda grosseiramente a informacao da silhueta das

imagens. O segundo passo e ajustar o modelo de referencia as informacoes obtidas. Estes

dados sao usados para ajustar cada um dos quadros da sequencia gerada, auxiliado pelo

conhecimento sobre o corpo humano e seus movimentos possıveis para ajustar a forma

gerada pela extracao. O foco principal, no entanto foi a captura do movimento, e nao a

aquisicao do modelo geometrico de uma pessoa. O ajuste da geometria e somente a parte

inicial do processo para captura dos movimentos.

Posteriormente, foram propostos modelos mais sofisticados, como os de Hilton et

al (HILTON et al., 1999) que tratam a extracao da silhueta de imagens 2D de frente, lado

e costas e depois propoe a deformacao de um template tridimensional para ajustar na

silhueta. Finalmente, as imagens sao utilizadas como texturas para serem mapeadas no

modelo 3D gerado. Lee et al (LEE; GU; MAGNENAT-THALMANN, 2000) propuseram

uma tecnica semelhante, utilizando tres fotografias tiradas de vistas ortogonais utilizadas

para gerar modelos que possam ser animados.

A parte destas tecnicas, tambem e preciso associar adequadamente uma hierar-

quia de esqueleto ao modelo gerado para ser possıvel aplicar animacoes a cada um dos

personagens criados. Este processo e manual, individual e exaustivo.

Page 17: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

16

Figura 2: Modelo capturado baseado em imagens (HILTON et al., 1999): a esquerda as

imagens de entrada e a direita o modelo reconstruıdo

2.3 Modelagem por interpolacao ou variacao de geo-

metria existente

Uma maneira de solucionar o problema da criacao de uma diversidade populaci-

onal, e atraves da modificacao de modelos geometricos existentes. Assim, as alteracoes

podem ser feitas aplicando funcoes de deformacao em um modelo geometrico base (tem-

plate) utilizando dados antropometricos ou realizando uma interpolacao entre dois ou

mais modelos existentes. Neste caso, para criar uma grande diversidade de geometrias

de humanos virtuais, nao ha a necessidade de se modelar exaustivamente cada um dos

agentes (como na categoria por construcao manual), nem e preciso utilizar uma grande

quantidade de pessoas reais para obter a diversidade desejada (como na categoria captura

e reconstrucao).

Rose et al (ROSE M. COHEN, 1998) mostram a primeira tecnica de interpolacao

baseada em exemplos de pessoas reais para combinar (blend) movimentos faciais utili-

zando Radial Basis Function (RBF) em Verbs and Adverbs. Cada exemplo de movimento

e anotado manualmente em um conjunto de valores (adverbs), como felicidade, raiva,

cansaco, etc. Depois de normalizados estes valores, cada um dos movimentos anotados

sao usados para formar os espacos de verbos e adverbios por interpolacao. Depois de

formulado o espaco contınuo, um movimento e derivado para qualquer um dos pontos

Page 18: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

17

deste espaco gerado. Este trabalho dedicava-se a gerar novas animacoes a partir de um

conjunto dado e serviu de base para trabalhos posteriores visando fazer alteracoes em

modelos geometricos de faces, criando expressoes diferentes. Mais recentemente, outras

tecnicas de interpolacao foram pesquisadas e utilizadas nao so para alteracoes faciais de

humanos virtuais, mas tambem para modificar a geometria do corpo inteiro, criando novos

modelos geometricos.

Azuola (AZUOLA et al., 1994) pesquisou a aplicacao de dados antropometricos

na criacao de humanos virtuais. O Spreadsheet Anthropometry Scaling System (SASS)

apresentado por ele permitiu aos usuarios criarem modelos de humanos que atendam a

especificacoes distintas e possam ser utilizados em seu sistema Jack. As medidas foram

compiladas de uma base de dados retirada de NASA Man-Systems Integration Manual

(NASA, a) e de Anthropometry Source Book (NASA, b). Os modelos geometricos po-

dem ser criados baseados em dados estatısticos colhidos de uma populacao ou usando

diretamente as dimensoes de uma pessoa especıfica. O padrao e gerar automaticamente

dimensoes para cada um dos segmentos de uma figura humana baseado em dados popu-

lacionais como entrada para o sistema. Foi criado um modelo geometrico base dividido

em trinta e um segmentos, onde cada um destes segmentos pode ser escalado em tres

direcoes informadas diretamente pelo usuario ou obtidas de uma base de dados: compri-

mento, largura e profundidade. A dimensao desejada e implementada pela escala precisa

de cada um dos componentes do corpo. A criacao de personagens realistas, depende da

informacao correta de todas as partes do corpo. Mais ainda, necessita do conhecimento

das medidas de um corpo especıfico, dificultando a criacao de um novo corpo sem que

as medidas tenham sido obtidas de uma pessoa especıfica. Este sistema e utilizado para

auxiliar no projeto de equipamentos e teste de ergonomia.

Page 19: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

18

Figura 3: Humanoides modelados por diferentes escalas (AZUOLA et al., 1994)

O objetivo do metodo de modelagem automatica adotada por Seo et al (SEO;

MAGNENAT-THALMAN, 2003) e a criacao de modelos humanos de aparencia realista

cujos tamanhos sao controlados atraves de um conjunto de dados antropometricos. Ao

inves de utilizarem dados estatısticos analisados de bases antropometricas como no traba-

lho anterior, eles fazem uso direto de tamanhos e formas de pessoas reais obtidas atraves

de scanner 3D para determinar a forma em relacao as medidas dadas. A partir dos dados

capturados, e encontrado um template adequado em uma base de dados, que sofrera trans-

formacoes para se ajustar ao corpo desejado. A malha do corpo e formada por vetores de

vertices de tamanho fixo (isto quer dizer que a topologia e conhecida previamente e que

o novo corpo ja estara com esqueleto associado). Ao deformar esta malha, e utilizado um

conjunto menor de vertices utilizando PCA (Principal Component Analysis) para reduzir

a quantidade de dados otimizando o modelo. Uma nova geometria e obtida deformando o

modelo base considerando duas entidades distintas para esta deformacao: rıgida e elastica.

A deformacao rıgida e feita no esqueleto do modelo, devido a alteracao do comprimento

nas partes do corpo. A deformacao elastica e essencialmente deslocamento de vertices,

que, quando adicionadas a deformacao rıgida representa a geometria do corpo. Entrando

com um conjunto de medidas, podem-se criar novos modelos estimados pela funcao de

interpolacao. Uma populacao pode entao ser criada informando uma serie de medidas

de corpos. As medidas utilizadas neste modelo sao: estatura, gancho, comprimento da

perna, medidas das circunferencias de pescoco, peito, tronco, cintura e quadril.

Page 20: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

19

Figura 4: Modelos gerados por alteracao dos parametros (SEO; MAGNENAT-THALMAN,

2003)

Allen et al (ALLEN; CURLESS; POPOVIC, 2002) apresentam um metodo para

ajustar um template de um modelo geometrico a um conjunto de pontos obtidos pela

captura a partir de scanners 3D e com alguma intervencao do usuario. Eles apresentam

uma formula para ajustar cada um dos vertices do modelo geometrico base para se ajustar

ao modelo capturado. O objetivo desta funcao e ponderar cada uma das tres medidas:

proximidade entre cada um dos vertices a ser transformado dos pontos capturados, simi-

laridade entre transformacoes vizinhas, e proximidade de marcadores feitos nas posicoes

dos vertices dos templates e na superfıcie de destino. No caso de dados incompletos na

aquisicao do conjunto de pontos, o modelo e robusto o suficiente para realizar o preenchi-

mento dos espacos vazios na malha. Com isto, eles exploram uma variedade de aplicacoes

para modelagem de corpos de humanos virtuais, entre elas a geracao de modelos a partir

de uma nuvem de pontos e analise de aspectos fısicos para modificar o modelo atraves

de parametros relacionados (como peso e altura). Para isto, eles apresentam um metodo

para ajustar uma correspondencia ponto a ponto entre um conjunto de superfıcies com

estruturas parecidas, mas com variacoes na forma. Por exemplo, dois corpos de pessoas

diferentes adquiridos em poses semelhantes para fazer interpolacao entre os modelos ad-

quiridos. Eles demonstram a tecnica com a criacao de diversidade populacional a partir

de alguns corpos-chave. Pelo metodo apresentado, e encontrada uma funcao de inter-

polacao entre os modelos, mapeando algumas caracterısticas do corpo. Neste caso, novos

Page 21: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

20

corpos podem ser gerados pela alteracao destes parametros. Na figura 5 eles mostram

esta variacao atraves das medidas de peso e altura.

Figura 5: Variacao de um corpo pela alteracao de peso e altura (ALLEN; CURLESS;

POPOVIC, 2002)

Lewis (LEWIS, 2000) descreve um sistema, implementado como um plug-in para o

Maya utilizando a Maya’s embedded scripting language (MEL). O objetivo deste sistema

e a criacao de geometrias de corpos de humanos virtuais atraves de uma interface simples,

sem a necessidade de conhecimento sobre como modelar uma figura humana. Na interface

do Maya e apresentado ao usuario um conjunto de modelos para que, a partir de selecao

de alguns corpos, seja gerado um novo modelo. Foi utilizado para os modelos de entrada o

formato H-Anim. Assim, todos os modelos utilizados possuem a mesma hierarquia. Todos

eles tambem possuem o mesmo numero de vertices e topologia. O usuario pode selecionar

dois modelos para servir de base para o novo modelo criado. Para que esta alteracao nao

seja apenas uma simples funcao de interpolacao linear entre os modelos, esta alteracao e

feita atraves de algoritmos geneticos. O novo modelo gerado sera feito pela combinacao

dos genotipos dos dois modelos originais. Os genotipos, neste caso, sao formados por

strings contendo a variacao em cada uma das partes. Para produzir modelos diferentes

a partir do mesmo conjunto inicial, sao geradas alteracoes aleatorias nos genotipos dos

modelos escolhidos no momento desta combinacao. Este novo modelo tera seu genotipo

salvo e pode ser reutilizado para combinacao com outro modelo base. O usuario pode,

Page 22: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

21

entao, fazer sucessivas combinacoes ate conseguir criar o modelo desejado.

Figura 6: Populacao inicial (LEWIS, 2000)

Lee et al (LEE; MAGNENAT-THALMANN, 2001) apresenta uma tecnica para criar

novas geometrias a partir de modelos geometricos (modeladas por artistas ou obtidos por

captura de fotografias ou por scanners), utilizando sistemas de morphing 2D e 3D para

realizar a variacao. O sistema apresentado neste trabalho permite a alteracao tanto da

forma do corpo quanto da cor da pele, realizando uma integracao entre a forma tridimensi-

onal e a informacao bidimensional da textura. Todos os corpos utilizados sao convertidos

para uma mesma estrutura geometrica conhecida. Isto significa que todos os corpos de

exemplo tem a mesma topologia, tornando facil a variacao de uma estrutura para outra

atraves de uma funcao de interpolacao simples. Para variacao da textura, e aplicado um

algoritmo de morphing 2D, baseado na triangularizacao da estrutura geometrica herdada

da geometria dos humanoides.

Page 23: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

22

Figura 7: Quatro modelos com diferentes formas e texturas (LEE; MAGNENAT-

THALMANN, 2001).

Modesto et al (MODESTO; GIBBS; RANGARAJU, 2001) mostra como a

PDI/Dreamworks fez para produzir os muitos personagens do desenho animado Shrek.

Neste desenho, o numero de personagens secundarios em cenas com multidao cresceu

tanto, que teve de ser desenvolvida uma forma para criar rapidamente novos personagens.

O objetivo do desenvolvimento da tecnica utilizada foi encontrar uma maneira de criar

personagens diferentes a partir de um modelo de corpo e alguns conjuntos de aspectos

fısicos (feicoes de rosto, cabelo, texturas de roupas, etc.). A criacao dos modelos base

envolveu duas equipes: uma responsavel por criar a geometria dos corpos (incluindo dife-

rentes variacoes de face, roupas, estilos de cabelo e chapeu) e a outra para fazer diferentes

cores de pele, cabelo e texturas de roupas. Foram criados seis modelos para guardas e

cinco para os outros tipos de personagens. Para cada um dos modelos foram criadas

tres configuracoes: gordo, normal e magro. A diversidade foi realizada alongando ou en-

colhendo o modelo geometrico base, criando uma quantidade diferente de corpos. Para

aumentar ainda mais a variedade de personagens existentes, foram modeladas tambem

diferentes cabecas. Como a maioria dos personagens eram homens, foram criados quatro

tipos de cabecas para homem, tres para mulheres normais e duas para personagens mais

estereotipados (queixo e nariz grandes). Tambem foram produzidos diferentes tipos de

cabelo e chapeu. Neste modelo, dependendo das alteracoes feitas, podem-se criar alguns

personagens de formas indesejaveis. Assim, para evitar isto, os artistas escolheram alguns

conjuntos especıficos de escala que representaram esteticamente alguns tipos de corpos,

Page 24: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

23

restringindo algumas variacoes.

Figura 8: Variacoes de um mesmo modelo (MODESTO; GIBBS; RANGARAJU, 2001)

2.4 Contexto deste trabalho no estado-da-arte

A criacao automatica de humanos virtuais nao e uma aplicacao nova, mas ainda e

uma tarefa bastante complexa, mesmo utilizando os softwares mais sofisticados da atuali-

dade. Alguns dos trabalhos relacionados anteriormente conseguem resolver este problema

de modo satisfatorio, mas ainda e preciso da intervencao do usuario. Em alguns casos,

esta intervencao exige do usuario um amplo conhecimento sobre anatomia humana. Em

outros casos, a intervencao e posterior, quando o personagem deve ser animado.

O objetivo deste trabalho e apresentar um modelo capaz de criar automaticamente,

baseado em somatotipo, uma grande quantidade de modelos geometricos esteticamente

aceitaveis, com mınima intervencao do usuario.

Para a geracao das geometrias, e utilizado um modelo geometrico base (template)

que sofre deformacoes em cada uma das partes do corpo a fim de gerar um novo persona-

gem. Ao contrario do trabalho de Azuola, o numero de partes do corpo nao e fixa. Nosso

trabalho utiliza o proprio esqueleto do modelo geometrico para criar personagens novos.

O template e composto de um esqueleto e da geometria de um personagem virtual, cuja

forma do corpo e hierarquia do esqueleto sao definidos livremente e gerados de acordo

com o objetivo e a necessidade da aplicacao a ser desenvolvida. Nos trabalhos anteriores,

Page 25: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

24

a construcao do template deve seguir uma forma previamente estipulada de acordo com a

definicao do modelo. Por exemplo, no trabalho de Azuola e baseado em um unico modelo

geometrico, composto de trinta e um segmentos que sao deformados um a um para criar

um novo personagem. Nos trabalhos de Seo et al, de Lewis e tambem o de Lee, todos os

corpos sao criados possuindo uma mesma topologia e uma hierarquia unica.

Os personagens gerados pelo metodo apresentado neste trabalho podem ser au-

tomaticamente animados, visto que os modelos geometricos sao criados com a malha

associada a um esqueleto. No trabalho apresentado por Allen, apos a geracao de um novo

modelo geometrico, e preciso que este passe por um processo exaustivo e complexo a fim

de ligar a malha a um esqueleto e ajustar pesos para cada um dos vertices (rigging), para

posteriormente animar o personagem gerado.

O modelo apresentado neste trabalho pode ser utilizado para criacao de perso-

nagens de qualquer numero de vertices (qualquer resolucao). O numero de vertices dos

personagens a serem gerados dependera unica e exclusivamente do modelo geometrico

base. Outros trabalhos apresentam algum tipo de restricao, por exemplo, os trabalhos de

Modesto e Lewis sao aplicados apenas a personagens de baixa resolucao, enquanto que os

trabalhos de Seo, Allen e Lee sao empregados para criacao de modelos geometricos com

grande numero de vertices.

Para definir a forma corporal de um personagem, o modelo apresentado e baseado

em um metodo cientıfico denominado somatotipo que visa classificar corpos de pessoas

reais. Este metodo e composto por tres componentes, e sera apresentado na secao 3.1.1.

A forma de cada pessoa e caracterizada pelo valor de cada um destes tres componentes,

sendo assim, para criar a forma do corpo de qualquer pessoa, este modelo utiliza apenas

tres parametros que definem a composicao corporal, alem das tabelas de dimensoes que

sao geradas anteriormente na criacao do template. O trabalho de Seo utiliza um conjunto

de oito medidas: estatura, gancho, comprimento da perna, medidas das circunferencias

de pescoco, peito, tronco, cintura e quadril. Allen utiliza um conjunto bem maior, pois

Page 26: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

25

utiliza varios marcadores por toda extensao do corpo. Alem dos parametros de entrada,

estes dois trabalhos necessitam tambem como entrada uma conjunto de pontos capturados

atraves de scanners 3D para a criacao de uma nova geometria. No trabalho de Azuola,

o conjunto de entrada de dados sao as alturas, larguras e profundidade de cada uma das

trinta e uma partes do corpo, totalizando noventa e tres dados de entrada para criar um

novo agente. Lewis utiliza sucessivas combinacoes de templates para a criacao de um

modelo geometrico final.

Devido ao fato do modelo apresentado neste trabalho utilizar o somatotipo para

geracao dos personagens, todos os modelos geometricos sao criados possuindo forma de

corpos visualmente validos. No trabalho de Azuola, a geracao de um corpo esteticamente

aceitavel e realizada utilizando medidas de pessoas reais armazenadas em uma base de

dados ou atraves da medicao de uma pessoa especıfica. Para Seo, a criacao de modelos

validos e realizada pela entrada de medidas corporais corretas, portanto se forem entrados

valores incorretos, o corpo do humano virtual gerado podera ser disforme. Nos trabalhos

de Lewis e Modesto, apos a geracao dos personagens e preciso ser realizada uma avaliacao

visual para verificar quais modelos geometricos criados possuem aparencia aceitavel ou

nao.

Alem de possibilitar a criacao de um personagem especıfico atraves de seu somato-

tipo, o modelo apresentado neste trabalho e capaz de criar uma diversidade populacional

de forma simples e rapida, gerando personagens visualmente aceitaveis com uma mınima

intervencao do usuario. Atraves da entrada de alguns dados estatısticos, como total de

personagens a ser criado, percentual de modelos masculinos e femininos, alturas, pesos

e seus desvios padrao, sao criadas automaticamente populacoes de personagens virtuais

prontas para serem animados em filmes, simulacoes e/ou jogos.

O proximo capıtulo descreve alguns conceitos importantes para compreensao do

modelo proposto, que e apresentado no capıtulo 4.

Page 27: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

26

3 CONCEITOS BASICOS

Devido a popularidade dos jogos e pelo crescimento do uso de ambientes virtuais,

esta se tornando cada vez mais difundida a utilizacao de modelos de humanos virtuais

3D. Por isto, e crescente o numero de pesquisas para geracao automatica de modelos

geometricos, como apresentado no capıtulo 2. Mas nao se conseguiu ainda, uma maneira

facil e rapida de criar uma variedade de modelos geometricos de humanos virtuais, sem

intervencao do usuario e sem que este necessite ter conhecimento previo de anatomia

humana. Mais ainda, os compromissos com o esteticamente aceito e a associacao do

modelo geometrico a um esqueleto para prover animacoes sao aspectos importantes na

geracao de humanos virtuais.

Assim, este trabalho visa a criacao de uma diversidade populacional de forma facil e

rapida atraves de um conjunto mınimo de parametros de caracterısticas fısicas, utilizando

um modelo consolidado na area de cineantropometria de maneira a garantir o realismo

dos personagens gerados.

Atraves da utilizacao de apenas altura e peso, e possıvel gerar alguma diversidade

de personagens. A variacao de altura serviria para escalar o personagem fazendo ele

ficar no tamanho desejado. Alterando o peso, o personagem seria deformado de forma a

engordar ou emagrecer obtendo o aspecto de um personagem com o peso estipulado. O

problema e que nao existe uma forma unica de modificacao corporal das pessoas de acordo

com o aumento ou reducao de peso. As pessoas sao diferentes e fatores como genetica e

atividade fısica determinam diferentes maneiras das pessoas variarem a sua forma devido

a perda ou ganho de peso. Mais ainda, a aquisicao de peso (aumento de IMC - Indice de

Page 28: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

27

Massa Corporal) pode representar ganho de massa muscular ou aumento do percentual

de gordura corporal.

Utilizando apenas um fator de variacao corporal (por exemplo o peso), so e possıvel

realizar a variacao em uma direcao. Ou seja, se for definido que o peso exerce variacao

no aumento/reducao de percentual de gordura, o modelo sera capaz de gerar somente

personagens magros ou gordos, nao sendo possıvel criar personagens de aspecto forte. Da

mesma forma, se for definido como variacao o aumento ou decrescimo de massa muscular,

nao sera possıvel criar personagens com aspecto de gordo. Mesmo assim, esta variacao de

massa muscular e diferente de pessoa para pessoa, dependendo da atividade fısica que ela

exerce. A forma do corpo de atletas que praticam natacao e diferente da forma de atletas

que praticam halterofilismo, por exemplo.

Por isto, neste trabalho, optou-se por basear a modelagem de humanos virtuais nas

possıveis classificacoes de corpos humanos pela sua forma, a fim de utilizar uma maneira

coerente de gerar a maior gama possıvel de personagens virtuais realistas.

Na secao a seguir, sao apresentados alguns modelos para medir e classificar as

formas de corpos humanos, principalmente o modelo de somatotipos que sera utilizado

neste trabalho. A secao 3.2 apresenta a forma de representacao de geometrias atraves

de modelos hierarquicos utilizados neste trabalho para criacao de personagens virtuais

animados.

3.1 Classificacao corporal

A classificacao de seres humanos em funcao de sua constituicao fısica existe ha

muito tempo. Essas classificacoes em gordo e magro, alto e baixo, forte e fraco, eram

inicialmente feitas de forma empırica, atraves de observacao.

A primeira classificacao que se tem conhecimento (CARNAVAL, 1995) foi feita por

Hipocrates, onde foram descritos dois tipos basicos:

Page 29: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

28

• Habitus Ptısicos (habitus phthisicus): Magro, longitudinal, cor palida e tendencia a

introversao.

• Habitus Apopleticus (habitus apoplecticus): Tronco em proporcoes iguais ou maiores

que os membros, musculoso, cor avermelhada e temperamento ativo e extrovertido.

A partir daı, segue-se varias tendencias de classificacao do tipo fısico. No inıcio, a

classificacao era feita de acordo com conceitos filosoficos, como: influencia astral, quali-

dade do sangue ou elementos basicos da formacao corporal. Depois surgiram as Escolas

Morfologicas, que basearam sua classificacao em observacoes do corpo do indivıduo. No

final do seculo XIX, foi criada a Escola Morfologica Clınica, que estabeleceu uma forma

ideal e duas outras combinacoes extremas, baseadas em medicoes e observacoes. A forma

ideal foi caracterizada como sendo o corpo de uma pessoa sadia e musculosa. Uma das

combinacoes extremas foi descrita como sendo de uma pessoa de desenvolvimento defi-

ciente, sem musculatura ou gordura. E a outra, foi caracterizada como tendo abdomen

amplo, com tecido adiposo bem desenvolvido.

Posteriormente, as classificacoes passaram a ter como base a utilizacao de estudos

estatısticos das medicoes antropometricas. A partir deste momento, passou-se a utilizar a

palavra Biotipo, definida como sendo a personalidade indicada pela forma, temperamento

moral e funcional e pela inteligencia, resultantes da heranca morfologica, fisiologica e

psicologica do indivıduo.

Na atualidade, a classificacao do biotipo, denominada Somatotipo, foi introduzida

por Sheldon (SHELDON, 1940) e posteriormente modificada por Heath e Carter (HEATH;

CARTER, 1990). Esta e a principal classificacao utilizada atualmente para classificacao

corporal em areas como medicina e educacao fısica. Por este motivo, este trabalho utiliza-

se desta classificacao como parametro de entrada para a geracao de humanos virtuais com

aparencia realista. O metodo de classificacao por somatotipo e explicado na proxima

secao.

Page 30: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

29

3.1.1 Somatotipo

William Sheldon (1898-1977) foi um psicologo americano que dedicou sua vida a

observacao da variedade de corpos humanos e temperamentos. Ele estudou milhares de

fotos de pessoas mostradas de frente, costas e vistas laterais. Atraves do exame minucioso

destas fotos, ele determinou como sendo tres os elementos fundamentais que, combinados

juntos, definem todos os tipos fısicos. Com grande esforco, ele trabalhou em uma forma de

mensurar estes tres elementos para expressar numericamente todas as formas de corpos.

Ele nomeou estes tres elementos basicos de endomorfia, mesomorfia e ectomorfia, pois

para ele, a variedade observada era derivada das tres camadas embrionarias (endoderme,

mesoderme e ectoderme).

A endomorfia para Sheldon e centrada no abdomen e em todo o sistema digestivo,

a mesomorfia e centrada na musculatura e a ectomorfia e relacionada ao cerebro e sistema

nervoso. De acordo com Sheldon, todas as pessoas contem estes tres elementos para

compor o corpo. Mais ainda, ninguem e somente endomorfo sem ter ao mesmo tempo

alguma porcao de mesomorfia e ectomorfia, mas tem-se estes componentes em diferentes

quantidades. Sheldon definiu uma escala de um ate sete para cada um dos componentes,

onde um e o valor mınimo e sete o maximo.

A forma mais simples de ter uma ideia da variedade de formas de corpos humanos e

examinar os seus extremos. De acordo com o metodo de Sheldon, um corpo de somatotipo

7-1-1 (sete-um-um) e um endomorfo extremo com o mınimo de mesomorfia e ectomorfia.

Este tipo de corpo se distingue pela massa estar concentrada na area abdominal, pele

macia, corpo com contornos suaves, sem projecao de ossos e cabeca esferica. A forma do

corpo de um mesomorfo extremo, ou 1-7-1, caracteriza-se por ter musculos bem desenvol-

vidos e definidos, ossos largos, a area do peito predomina a regiao abdominal, os musculos

em ambos os lados do pescoco sao salientes e com coxas e bracos bem desenvolvidos. A

forma fısica de um corpo altamente ectomorfo, ou 1-1-7, e de aparencia fragil e delicada

com musculatura debil. Em contraste com os outros dois extremos, o corpo tem aspecto

Page 31: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

30

linear.

Sheldon definiu um diagrama para determinar os tipos de corpos onde pode-se

localizar todas as possıveis formas corporais. A figura abaixo ilustra um diagrama onde

sao destacadas as formas de corpos extremas.

Figura 9: Diagrama de formas corporais extremas.

A classificacao dos tipos de corpos nao era o objetivo final de Sheldon. Ele queria

principalmente investigar como o tipo corporal se relaciona com a maneira de agir das

pessoas. Resumidamente, ele queria determinar a ligacao entre a forma do corpo e o

temperamento. O temperamento explora como as pessoas dormem e comem, riem e

roncam, falam e caminham. Para Sheldon, temperamento e o tipo fısico do corpo em acao

(CARNAVAL, 1995). Ele estabeleceu relacao do componente endomorfia com descanso,

conforto, comida e amizade. O componente mesomorfia foi centrado na agressividade e

gosto por atividades fısicas. Ja o componente ectomorfia foi relacionado com privacidade,

moderacao e atencao.

A tecnica apresentada por Sheldon, para determinar cada um dos componentes

do somatotipo, consiste em fotografar um indivıduo de frente, costas e perfil. Depois, e

feita uma analise das fotos dividindo-se em algumas partes e realizando alguns calculos

determinados pela sua tecnica. Devido a deficiencia e dificuldade de seu metodo, varios

Page 32: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

31

autores sugeriram modificacoes para torna-lo mais pratico e economico. A tecnica para o

calculo do somatotipo de Heath-Carter (HEATH; CARTER, 1990), por ser extremamente

vantajosa quanto a rapidez de execucao e de calculo e seu baixo custo operacional, foi

amplamente aceita por grupos de estudiosos e e utilizada em larga escala na atualidade.

A proxima secao apresenta detalhes desta tecnica e metodo.

3.1.2 Metodo de somatotipo Heath-Carter

O metodo de somatotipo proposto por Heath e Carter (HEATH; CARTER, 1990)

(denominado metodo de somatotipo Heath-Carter) e uma modificacao do sistema desen-

volvido por Sheldon. A grande maioria do vocabulario utilizado no novo modelo e o

mesmo, mas difere em alguns pontos importantes:

• O modelo de Sheldon foi utilizado para avaliacao do comportamento, enquanto o

modelo de somatotipo Heath-Carter e utilizado para avaliacao do desempenho motor

e crescimento.

• No modelo de Sheldon, os valores dos tres componentes do somatotipo eram restritos

entre 1 e 7, enquanto que no modelo Heath-Carter eles propuseram uma escala dos

valores diferencioda: endomorfia (0.5 a 16), mesomorfia (0.5 a 12) e ectomorfia (0.1

a 9), embora nao havendo restricao de valores mınimos e maximos1. E importante

observar que nao existe um criterio para indicar a precisao dos componentes do

somatotipo. Alguns profissionais utilizam apenas valores inteiros, enquanto outros

utilizam valores com alta precisao.

De acordo com os ındices encontrados para cada componente do somatotipo, Heath e

Carter descrevem as seguintes classificacoes somatotipologicas:

• Endomorfo dominante: o primeiro componente (endomorfia) tem valor alto, en-

quanto que os outros componentes tem valor baixo e nao diferem em mais de meia

1Os valores apresentados sao os comumente utilizados.

Page 33: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

32

unidade;

• Mesomorfo dominante: o segundo componente (mesomorfia) tem valor alto, en-

quanto que os outros componentes tem valor baixo e nao diferem em mais de meia

unidade;

• Ectomorfo dominante: o terceiro componente (ectomorfia) tem valor alto, enquanto

que os outros componentes tem valor baixo e nao diferem em mais de meia unidade;

• Endomesomorfo: primeiro e segundo componentes tem valores altos e nao diferem

de mais de meia unidade e o terceiro componente tem valor baixo;

• Endoectomorfo: primeiro e terceiro componentes tem valores altos e nao diferem de

mais de meia unidade e o segundo componente tem valor baixo;

• Endomesomorfo: segundo e terceiro componentes tem valores altos e nao diferem

de mais de meia unidade e o primeiro componente tem valor baixo;

• Central : Os tres componentes sao iguais, ficando em torno de 312.

Nao existe uma definicao especıfica do que significa valores altos e baixos na lite-

ratura. A seguir, sao mostrados exemplos de valores respectivos a cada uma das classi-

ficacoes apresentadas: 9-1-1, 1-9-1, 1-1-9, 6-6-1, 6-1-6, 1-6-6, 312-31

2-31

2.

O modelo Heath-Carter introduziu equacoes para calculo do somatotipo baseado

em dados antropometricos. Anteriormente, o calculo era feito somente atraves de foto-

grafias. A proxima secao explica como calcular o somatotipo utilizando a antropometria.

3.1.3 Obtendo o somatotipo

Existem tres maneiras de obter o somatotipo de um indivıduo:

• Metodo antropometrico: Medicoes antropometricas: medidas de dobras cutaneas,

estatura, peso, circunferencias ou perımetros sao utilizadas para estimar o somato-

tipo;

Page 34: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

33

• Metodo fotoscopico: no qual os valores do somatotipo sao definidos atraves de uma

imagem padrao;

• Metodo antropometrico e fotoscopico: combina ambos os metodos para estimar o

somatotipo.

Devido a dificuldade de se utilizar o metodo fotoscopico, o metodo antropometrico e o mais

utilizado atualmente. Pode ser utilizado em qualquer laboratorio de cineantropometria e

requer poucos calculos e equipamentos. Permite que as medidas possam ser realizadas de

maneira relativamente facil em pessoas vestidas com poucas roupas. O metodo fotoscopico

necessita a utilizacao de imagens de pessoas nuas.

A determinacao do somatotipo atraves do metodo antropometrico e realizada com

as seguintes medidas:

• Estatura

• Peso

• Dobras cutaneas de trıceps, subescapular, supra-ilıaca e perna

• Diametro de umero e femur

• Perımetro de braco contraıdo e perna

No calculo do primeiro componente (endomorfia), e necessario o somatorio das dobras

cutaneas de trıceps, subescapular e supra-ilıaca em milımetros. Corrige-se esse somatorio

com a estatura padrao (170,18 cm) dividido pela estatura do indivıduo em centımetros:

Endomorfia =somatorio das dobras · 170, 18

estatura(3.1)

Para o segundo componente (mesomorfia) e utilizada a seguinte equacao:

Page 35: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

34

Mesomorfia = 0, 858U + 0, 601F + 0, 188B + 0, 161P − 0, 131H + 4, 5 (3.2)

onde:

U = diametro de umero

F = diametro de femur

B = perımetro de braco contraıdo corrigido = perımetro de braco contraıdo (cm)

- dobra cutanea de trıceps (cm)

P = perımetro de perna corrigido = perımetro de perna (cm) - dobra cutanea de

perna (cm) H = estatura

O calculo do terceiro componente (ectomorfia) e obtido calculando primeiramente

o HWR (height-weight ratio), que e a estatura dividida pela raız cubica do peso:

HWR =estatura

3√

peso(3.3)

Se o valor de HWR for maior que 40,75, entao o grau de ectomorfia e:

Ectomorfia = 0, 732HWR − 28, 58 (3.4)

Se o valor de HWR for maior que 38,25 e menor ou igual a 40,75:

Ectomorfia = 0, 463HWR − 17, 63 (3.5)

E, se HWR for menor ou igual a 38,25, o valor de ectomorfia sera de 0,1.

Desta forma, os tres componentes que definem o somatotipo de um indivıduo sao

calculados. Estas definicoes foram usadas como base no modelo computacional desen-

volvido neste trabalho, conforme sera descrito no proximo capıtulo. A proxima secao

Page 36: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

35

descreve alguns conceitos basicos sobre a modelagem geometrica de personagens virtuais

humanos.

3.2 Consideracoes sobre modelagem geometrica de

humanos virtuais

Como foi visto no capıtulo 2, existem muitas formas de se construir modelos

geometricos de humanos virtuais que vao desde a construcao de modelos geometricos

apenas por uma malha de polıgonos, ate a utilizacao de geometrias que buscam imitar

a anatomia humana modelando musculos, ossos e pele. Uma das formas mais comu-

mente utilizadas para representar a geometria de humanos virtuais e atraves de modelos

hierarquicos, nos quais os modelos geometricos sao formados por partes separadas armaze-

nadas em uma estrutura hierarquica chamada de esqueleto. Este esqueleto normalmente

utiliza matrizes de transformacoes que servem para animar suas partes. Outra maneira

utilizada e armazenando o modelo geometrico como sendo uma unica malha, na qual a

animacao e feita por interpolacao de varias poses da mesma malha, como no formato

MD3 do Quake2. Neste trabalho optou-se pela representacao por modelos hierarquicos

por ser uma das maneiras mais tradicionais e utilizadas de animar modelos geometricos.

Na verdade, a maior parte das pesquisas em construcao e modelagem de humanos virtuais

nao considera a representacao por esqueleto, porque nao visam a animacao automatica

destes humanoides, como e o caso deste trabalho.

Os personagens sao construıdos por representacao hierarquica, e sao compostos por:

malhas, esqueleto, materiais e animacao. A malha serve para determinar a aparencia fısica

do personagem e e formada por polıgonos compostos por um conjunto de vertices (figura

10). No modelo proposto neste trabalho, a geracao das geometrias dos novos personagens

sera realizada atraves da alteracao desta malha de polıgonos, mudando a forma de um

template para criar personagens com diversas aparencias, de acordo com os dados de

entrada do modelo.

2http://www.idsoftware.com

Page 37: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

36

Figura 10: Malhas do template feminino adulto.

Para esta malha ser animada, sao utilizados esqueletos hierarquicos para criar um

modelo geometrico articulado. O esqueleto e um sistema hierarquico de objetos repre-

sentado por ossos e suas juntas. Um exemplo de esqueleto hierarquico de um humanoide

pode ser definido por uma estrutura na qual o inıcio (raiz) e a pelvis e os nodos filhos sao

as partes adjacentes, na qual as partes extremas desta estrutura sao as extremidades do

corpo (pes, maos e cabeca). E este sistema que permitira movimentos como: um ciclo de

caminhada, corrida, balancar a cabeca, etc. A movimentacao do personagem e realizada

pelas rotacoes das juntas do esqueleto e dos ossos que representam a maneira com que

estas juntas sao conectadas. Como o esqueleto e um sistema hierarquico, o movimento

da junta que representa o cotovelo de um modelo humano, por exemplo, nao ira afetar

somente a posicao do antebraco, mas tambem a posicao da mao e dos dedos. As juntas

e ossos definem a movimentacao do personagem. A figura 11 mostra um exemplo de

esqueleto de um humanoide.

Page 38: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

37

Figura 11: Esqueleto de um humanoide.

Para unir a malha ao esqueleto (rigging), os vertices da malha sao associados aos

ossos do corpo. Ao realizar rotacoes nas juntas do personagem, os vertices que fazem parte

do esqueleto sao tambem alterados, bem como as malhas que dao volume ao humanoide.

Se os vertices da malha, a serem alterados, pertencerem a apenas um dos ossos, quando

o personagem for animado podera haver descontinuidade na malha proximo as juntas

(figura 12(a)), pois a malha nao sofrera deformacao. Para evitar este problema, cada um

dos vertices pode estar associado a um ou mais ossos do esqueleto. Isto e feito atribuindo

um valor de peso para cada um dos ossos em que o vertice e ligado. Assim, vertices que

ficam proximos as juntas podem ser associados a mais de um osso, nao gerando desconti-

nuidade na animacao (figura 12(b)). Muitos modelos recentes utilizam esta estrutura de

armazenamento da malha na qual os vertices podem ser compartilhados por mais de uma

parte do corpo hierarquico. No modelo apresentado neste trabalho, utilizou-se os pesos,

que sao definidos nos arquivos da geometria, para vertices compartilhados por mais de

um osso, e nao existe restricao quanto ao numero de ossos ou a disposicao dos mesmos

na hierarquia.

As animacoes sao descritas por um conjunto de informacoes especificadas em

quadros-chave para varios instantes de tempo, onde cada um destes quadros armazena

Page 39: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

38

a rotacao feita em cada uma das juntas que compoe o personagem. Para fazer um per-

sonagem ser animado, em cada instante de tempo, a malha que compoe o personagem e

deformada atraves das transformacoes de rotacao aplicadas ao esqueleto. Para os instan-

tes de tempo entre cada um dos quadros-chave, e aplicada uma funcao de interpolacao

para encontrar os angulos de rotacoes intermediarios.

Figura 12: Movimento de uma junta sem deformacao (a) e com deformacao (b).

Para definir a aparencia dos personagens, sao definidos os materiais que compoe a

malha. Estes materiais sao compostos de cores ou texturas para que o modelo possa ter

uma aparencia realista ao ser visualizado e animado. Combinado com a geometria, que

define a forma do modelo, um conjunto de materiais e aplicado a um modelo geometrico

para definir o aspecto visual do personagem. No modelo apresentado neste trabalho, cada

um dos templates podera ter mais de um conjunto de materiais, conforme ilustrado na

figura 16.

O proximo capıtulo apresenta o modelo proposto neste trabalho para geracao au-

tomatica de populacoes de personagens virtuais, baseado em somatotipo e com a mınima

intervencao do usuario, gerando personagens esteticamente aceitaveis e prontos para se-

rem animados.

Page 40: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

39

4 MODELO

De todos os metodos para classificacao dos corpos humanos pesquisados ate o

momento, o metodo de somatotipo de Heat-Carter e o mais consolidado. E usado prin-

cipalmente na cineantropometria, com aplicacao direta na Medicina e Educacao Fısica

para ajudar a entender o movimento humano no contexto do crescimento, exercıcio, per-

formance e nutricao.

Como foi discutido no inıcio do capıtulo 3, a utilizacao de apenas um fator para va-

riacao corporal permite realizar a variacao em apenas uma direcao. Utilizando o metodo

de somatotipo, pode-se gerar todas as variedades de corpos. Assim, ao inves de fazer o

corpo apenas engordar e emagrecer ou fortalecer e enfraquecer, pode-se utilizar o soma-

totipo para criar personagens das formas mais variadas possıveis e existentes.

Poderia se pensar em criar uma formula para variacao corporal utilizando o so-

matotipo. O componente endomorfia fazendo o corpo ganhar ou perder gordura e o

componente mesomorfia fazendo o corpo ganhar ou perder musculatura. Mas as pessoas

nao engordam nem aumentam a musculatura da mesma maneira. Elas diferem umas das

outras consideravelmente, existindo pessoas das mais variadas formas. Por exemplo, al-

gumas pessoas engordam de forma uniforme, outras mais na regiao do abdomen e outras

nas nadegas e coxas. Tambem os atletas de diferentes modalidades aumentam ou reduzem

sua musculatura diferentemente.

E importante notar que o somatotipo e uma maneira geral para descrever a forma

dos corpos e nao define como dimensoes especıficas de cada parte do corpo variam, mas

indica como e a constituicao fısica de uma pessoa. Assim, utilizando-se alguns exemplos de

Page 41: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

40

formas de corpo com seus respectivos valores de somatotipo, podemos gerar uma variedade

de formas diferentes e visualmente validas.

Este capıtulo apresenta o modelo proposto neste trabalho para geracao automatica

de populacoes de personagens virtuais a partir da criacao de um modelo computacional que

implementa conceitos de somatotipo. A criacao das geometrias dos novos personagens sao

realizadas atraves do uso de modelos geometricos base, somatotipos e caracterısticas fısicas

da populacao a ser criada. A figura 15 expoe uma visao geral dos passos para a criacao

de diversidade populacional pelo modelo apresentado neste trabalho. Resumidamente, os

passos para geracao de uma populacao de personagens virtuais sao:

• Passo 1 - Definicao dos dados iniciais: Sao definidas distribuicoes estatısticas

com dados populacionais conforme especificacao do usuario;

• Passo 2 - Escolha do template: Para cada novo personagem a ser criado, como

parte da populacao gerada, e escolhido o template adequado que servira de base para

geracao da nova geometria. Um template e composto de um modelo geometrico base

e informacoes de exemplo dos somatotipos dominantes, conforme sera visto na secao

4.2;

• Passo 3 - Definicao dos novos somatotipos: Atraves das distribuicoes es-

tatısticas sao gerados valores de somatotipos para cada um dos novos personagens;

• Passo 4 - Calculo de influencia dos somatotipos dominantes: Atraves dos

exemplos de somatotipos dominantes contidos no template, e calculada a contri-

buicao de cada um destes para criacao da geometria do personagem a ser gerado,

como descrito na secao 4.4;

• Passo 5 - Calculo de variacao na malha: A contribuicao calculada no passo 4

e utilizada para definir a forma do novo corpo a ser gerado. Sao entao calculadas as

variacoes que cada uma das partes do corpo do modelo geometrico base (vide secao

Page 42: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

41

4.2) ira sofrer para atingir a forma gerada pelo novo somatotipo definido no passo

3;

• Passo 6 - Deformacao da malha atraves dos vertices: Sao realizados de-

formacoes em todos os vertices do modelo geometrico base para gerar a nova forma

do novo personagem.

Figura 13: Passos para criacao de diversidade populacional.

A definicao de dados iniciais pode ser de um indivıduo especıfico ou de uma po-

pulacao. Resultados obtidos pela utilizacao deste modelo serao discutidos no capıtulo

5. Cada um dos passos apresentados anteriormente sao explicados detalhadamente nas

proximas secoes.

4.1 Definicao de dados iniciais

A modelagem geometrica dos personagens virtuais e realizada de acordo com duas

informacoes: caracterısticas fısicas da populacao a ser criada e templates. As carac-

terısticas fısicas da populacao a ser criada sao: nome e quantidade de personagens a

serem criados, percentuais de masculino e feminino na populacao, medias de idade, altura

Page 43: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

42

e peso, assim como seus desvios padrao. A populacao sera criada de acordo com a distri-

buicao estatıstica informada. Primeiro sao criados um numero de modelos masculinos e

femininos de acordo com os valores de quantidade e percentuais de feminino e masculino.

Para cada personagem criado, sao definidos aleatoriamente valores de idade, altura

e peso conforme a distribuicao informada. No prototipo desenvolvido neste trabalho,

utilizou-se uma distribuicao normal de probabilidade para geracao das variaveis aleatorias.

Mas, dependendo da necessidade, pode-se substituir esta distribuicao por outro tipo, como

por exemplo uniforme ou exponencial. No capıtulo 5 sao mostradas imagens de interfaces

para entrada de dados do modelo utilizadas no prototipo criado para este trabalho. E

possıvel tambem a criacao de apenas um personagem definindo valores exatos para sexo,

idade, altura e peso. Para isto, e utilizada uma interface para informar individualmente

estes valores para cada um dos personagens criados.

Estas informacoes sao utilizadas para criacao da geometria dos novos personagens,

como sera explicado nas proximas secoes.

4.2 Escolha do template

Apos a definicao dos dados, e feita a geracao das geometrias dos novos persona-

gens. Os dados de entrada sao utilizados para escolha de um template adequado que sera

alterado para geracao do novo personagem. Primeiramente, no entanto, apresenta-se a

definicao de um template atraves das informacoes que o compoem:

• Sexo;

• Idades mınima e maxima;

• Altura e peso;

• Arquivos de geometria e esqueleto. Nao ha restricoes relacionadas a geometria ou

esqueleto. O artista e livre para modela-lo como quiser;

Page 44: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

43

• Arquivos de animacao, que serao combinados para fazer com que o agente se mova

de acordo com seus parametros de movimento;

• Alguns conjuntos de materiais, para fornecer uma maior variacao visual;

• Uma tabela de dimensao contendo as medidas de cada parte do corpo definido pelo

arquivo de esqueleto em cada uma das direcoes (altura, largura e profundidade);

• Tabelas de dimensoes de somatotipos dominantes (endomorfo dominante, meso-

morfo dominante e ectomorfo dominante). E possıvel definir mais de uma tabela de

dimensoes para cada um dos somatotipos dominantes, sendo necessaria pelo menos

uma para cada somatotipo dominante. A seguir e descrito o conteudo desta tabela.

As tabelas de dimensoes sao utilizadas para calcular contribuicao de cada soma-

totipo dominante no personagem a ser criado (secao 4.4) e para calculo da variacao das

partes (secao 4.5). Elas sao compostas por:

• Classificacao somatotipologica (endomorfo, mesomorfo ou ectomorfo)

• Valor de cada um dos tres componentes do somatotipo (por exemplo 1-7-1)

• Dimensoes para cada parte do corpo (mesmas partes do corpo presentes no arquivo

de esqueleto do modelo geometrico), contendo o nome do osso indicando a qual parte

estao relacionados os valores e suas dimensoes (altura, largura e profundidade).

No prototipo apresentado neste trabalho (secao 4.2), os arquivos de configuracao

de template foram definidos utilizando a linguagem XML. Um exemplo de arquivo de

template utilizado e apresentada na figura abaixo.

Page 45: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

44

01: <?xml version="1.0" encoding="ISO-8859-1"?>

02: <TEMPLATE scale = 1.0 gender="male" minage=16 maxage=70

03: weight=65 height=165>

04: <!-- -- -- -- M O D E L O G E O M E T R I C O : - -- -- -- -->

05: <SKELETON>man.CSF</SKELETON>

06: <MESHES>

07: <MESH>man.CMF</MESH>

08: </MESHES>

09: <!-- -- -- -- -- -- -- M A T E R I A I S : -- -- -- -- -- -- -->

10: <MATERIALS>

11: <MATERIALSET>

12: <MATERIAL>body1.CRF</MATERIAL>

13: <MATERIAL>face1.CRF</MATERIAL>

14: <MATERIAL>hair1.CRF</MATERIAL>

15: </MATERIALSET>

16: <MATERIALSET>

17: <MATERIAL>body2.CRF</MATERIAL>

18: <MATERIAL>face2.CRF</MATERIAL>

19: <MATERIAL>hair2.CRF</MATERIAL>

20: </MATERIALSET>

21: </MATERIALS>

22: <!-- -- -- -- -- -- -- A N I M A C ~O E S : -- -- -- -- -- -- -->

23: <ANIMATIONS>

24: <ANIMATION>easy.CAF</ANIMATION>

25: <ANIMATION>afraid.CAF</ANIMATION>

26: <ANIMATION>angry.CAF</ANIMATION>

27: <ANIMATION>sad.CAF</ANIMATION>

28: <ANIMATION>happy.CAF</ANIMATION>

29: </ANIMATIONS>

30: <!-- -- -- D I M E N C ~O E S D O T E M P L A T E : -- -- -->

31: <DIMENSIONS>

32: <DIMENSION bone="Abdomen">25.0 34.0 23.0</DIMENSION>

33: <DIMENSION bone="Left UpperArm">28.0 10.5 10.5</DIMENSION>

34: <DIMENSION bone="Left Thigh">52.0 16.5 16.5</DIMENSION>

...

36: </DIMENSIONS>

38: <!-- -- -- -- -- -- -- D I M E N C ~O E S D O S -- -- -- -- -->

39 <!-- -- -- -- T E M P L A T E S D O M I N A N T E S : - -- -->

40: <SOMATOTYPES>

41: <SOMATOTYPE type="endomorph" name="endo001"

42: endomorphy="6.0" mesomorphy="3.0" ectomorphy="1.5">

43: <DIMENSIONS>

44: <DIMENSION bone="Abdomen">25.0 42.8 45.2</DIMENSION>

45: <DIMENSION bone="Left UpperArm">28.0 15.5 15.5</DIMENSION>

46: <DIMENSION bone="Left Thigh">52.0 21.5 21.5</DIMENSION>

...

48: </DIMENSIONS>

49: </SOMATOTYPE>

50: <SOMATOTYPE type="mesomorph" name="meso001"

51: endomorphy="2.0" mesomorphy="8.0" ectomorphy="1.0">

52: <DIMENSIONS>

53: <DIMENSION bone="Abdomen">25.0 34.5 23.7</DIMENSION>

54: <DIMENSION bone="Left UpperArm">28.0 12.5 12.5</DIMENSION>

55: <DIMENSION bone="Left Thigh">52.0 17.7 17.7</DIMENSION>

...

57: </DIMENSIONS>

58: </SOMATOTYPE>

59: <SOMATOTYPE type="ectomorph" name="ecto001"

60: endomorphy="2.0" mesomorphy="2.0" ectomorphy="6.5">

61: <DIMENSIONS>

62: <DIMENSION bone="Abdomen">25.0 32.5 22.5</DIMENSION>

63: <DIMENSION bone="Left UpperArm">28.0 9.0 9.0</DIMENSION>

64: <DIMENSION bone="Left Thigh">52.0 14.0 14.0</DIMENSION>

...

66: </DIMENSIONS>

67: </SOMATOTYPE>

68: </SOMATOTYPES>

69: </TEMPLATE>

Figura 14: Exemplo de arquivo de configuracao de template

Apos ser feita a distribuicao dos dados estatısticos para criar a populacao, por

exemplo: populacao de 50 pessoas, 50% do sexo masculino e 50% do sexo feminino,

media de 70 Kg de peso com desvio padrao de 10 Kg e media de 170 cm de altura com

desvio padrao 20 cm, o sistema inicia a geracao de cada indivıduo atraves de um conjunto

de dados (sexo, idade, altura e peso). Apos este procedimento, para cada humanoide,

Page 46: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

45

sera escolhido um template adequado que possa ser alterado para dar origem a nova

geometria. A escolha do template apropriado leva em consideracao o sexo e idade de

cada um dos personagens a serem criados, escolhendo aquele que melhor se enquadra aos

dados gerados. A informacao de sexo deve coincidir com a do template e a idade deve

estar entre os intervalos mınimo e maximo informados no template.

O numero de templates a serem utilizados nao e fixo, podendo mudar de acordo

com o proposito da simulacao. Pode-se utilizar apenas um template para cada sexo ou

ainda um para cada idade. Quanto maior o numero de templates, maior sera a diversidade

criada. No caso dos testes feitos (capıtulo 5), foram utilizados apenas quatro modelos:

masculino adulto, feminino adulto, menino e menina.

Depois de escolhido o template, a ser utilizado como base para geracao da geometria

do novo personagem a ser criado, e definido seu somatotipo. A secao 4.3 apresenta como

o somatotipo e gerado.

4.3 Definicao dos novos somatotipos

Certos valores de somatotipos nao sao biologicamente possıveis. Por exemplo,

somatotipos com valores baixos para todos os componentes (endomorfia, mesomorfia e

ectomorfia) e impossıvel, assim como valores altos para todos os componentes. Geral-

mente, somatotipos com valores altos para endomorfia e/ou mesomorfia nao podem ter

valores altos tambem para ectomorfia. Na realidade, a restricao biologica da variacao da

forma corporal humana recai na definicao dos componentes: se um corpo e muito magro

(ectomorfo), nao e possıvel que ele tenha uma grande quantidade de gordura (endomor-

fia) ou massa muscular (mesomorfia). Nao e possıvel determinar exatamente a correlacao

entre os componentes do somatotipo (HEATH; CARTER, 1990), ja que existem diferentes

formas de representar o somatotipo. Alguns metodos utilizam taxas como unidades in-

teiras e outros metodos com valores de alta precisao. Tambem alguns metodos utilizam

valores fechados e outros sem restricao de valores maximos e mınimos. As caracterısticas

Page 47: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

46

variam dependendo da forma de calculo do somatotipo. Caso seja calculado baseado no

metodo antropometrico, cada um dos componentes e baseado em um conjunto de medidas

diferentes e calculados independentemente (secao 3.1.3). No caso do metodo fotoscopico,

o somatotipo e todo baseado em restricoes classificadas em uma tabela contendo valo-

res de HWR e seus respectivos valores antropometricos validos. Assim, existe um certo

grau de dependencia entre os valores dos componentes do somatotipo (HEATH; CARTER,

1990), mas nao existe um calculo direto desta relacao.

A fim de criar sempre personagens visualmente validos, nao se pode utilizar valo-

res de somatotipo invalidos (os tres componentes com valores altos ou todos com valores

muito baixos, por exemplo). Para restringir a criacao de valores de somatotipos invalidos,

este modelo baseou-se na tabela apresentada por Heat e Carter que estabelece a relacao

entre HWR e valores de somatotipos validos. Nesta tabela, observa-se que a soma dos

valores de endomorfia e de mesomorfia e inversamente proporcional a HWR, enquanto

que os valores de ectomorfia sao calculados diretamente de HWR, como e apresentado na

secao 3.1.3. Para os valores de HWR menores que 38,25, o valor de ectomorfia e constante

(0,1), enquanto que a soma dos outros dois componentes continua a subir a medida que

o valor de HWR diminui. Por isto, nao e possıvel estipular uma relacao direta entre os

tres componentes do somatotipo. Observou-se empiricamente que a soma dos componen-

tes endomorfia, mesomorfia e ectomorfia (sendo esta ultima calculada atraves da equacao

3.4) e aproximadamente 10,5 para todos os valores da tabela e tambem para os valores de

somatotipos observados em (HEATH; CARTER, 1990) e em (NORTON; OLDS, 1996). Nao

pretende-se com isto estabelecer uma regra para estabelecer que so existam somatotipos

que sigam este padrao, mas intenciona-se impedir, a partir desta relacao, a criacao de

somatotipos invalidos nas ferramentas de criacao de personagens. Garante-se com esta

relacao que todos os novos personagens criados possuem formas e somatotipos visual-

mente validos. A equacao abaixo apresenta a relacao observada entre HWR, endomorfia

e mesomorfia.

Page 48: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

47

endomorphy + mesomorphy + (0, 732 ·HWR)− 28, 58︸ ︷︷ ︸equacao 3.4

' 10, 5 (4.1)

Isolando a endomorfia, tem-se:

endomorphy = 10, 5−mesomorphy − ((0, 732 ·HWR)− 28, 58) (4.2)

Por exemplo, os valores especıficos (63 Kg de peso, 171,5 cm de altura e somatotipo

4-4-3) deram origem ao humanoide da figura 24 (secao 5.1).

Continuando a descrever o processo de geracao de uma populacao, quando o sis-

tema gera o somatotipo do novo personagem a ser criado, o valor de ectomorfia e calculado

atraves dos valores de altura e peso, definidos no template (conforme secao 4.2). Depois,

e estipulado aleatoriamente um valor para mesomorfia. E por ultimo, e calculada a taxa

para endomorfia a partir dos outros dois valores conforme equacao 4.2.

A criacao de apenas um indivıduo tambem e possıvel e e feita pela entrada de

um somatotipo especıfico. No prototipo implementado neste trabalho, o componente

de ectomorfia e calculado automaticamente atraves dos valores de altura e peso (secao

3.1.3). O usuario, atraves de interface, estipula qual a taxa de mesomorfia (referente a

massa muscular) o novo personagem ira possuir. Devido a relacao existente entre os tres

componentes, o valor de endomorfia (referente a gordura) e calculado automaticamente

como funcao dos valores de dos outros dois componentes, conforme equacao 4.2.

O valor do novo somatotipo (NS-New Somatotype) definido neste momento, con-

tendo os componentes mesomorfia, endomorfia e ectomorfia, e utilizado para alteracao da

geometria do personagem, conforme especificado nas secoes a seguir.

Page 49: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

48

4.4 Calculo de influencia dos somatotipos dominan-

tes

Para gerar as dimensoes do novo personagem, o modelo utiliza um exemplo de cada

um dos somatotipos dominantes (endomorfo, mesomorfo e ectomorfo). Como apresentado

na secao 4.2, os templates contem tabelas de dimensoes de somatotipos dominantes, con-

tendo o valor de cada um dos componentes somatotipologicos e as medidas de cada parte

do corpo. As novas dimensoes do personagem a ser gerado sao calculadas em funcao

das dimensoes dos somatotipos dominantes, do novo somatotipo criado e das dimensoes

e somatotipo do template escolhido. Para isto, e calculada a influencia de cada um dos

componentes (somatotipos dominantes) para geracao da nova geometria.

Existem, como ja foi citado no inıcio do capıtulo, variadas formas das pessoas ga-

nharem ou perderem peso. Isto se deve, principalmente, pelas caracterısticas metabolicas

e hormonais (NUSSEY; WHITEHEAD, 2001). Pessoas com metabolismo baixo tendem a

adquirir peso muito facilmente, sendo que este ganho de peso ocorre uniformemente em

todo o corpo. Pessoas com metabolismo acelerado geralmente nao ganham peso com faci-

lidade, mas quando isto ocorre, as regioes mais afetadas sao as coxas e nadegas. Quando

a producao de hormonios masculinos e alta, a regiao do abdomen tem maior acumulo de

gordura que em outras partes. E, quando a producao de hormonios femininos e alta, as

regioes de maior acrescimo de gordura sao as coxas, nadegas e bacia. Tambem a maneira

com que os atletas de diferentes modalidades esportivas tendem a aumentar a massa mus-

cular e diferente. A maneira dos musculos sofrerem alteracao de tamanho e relacionado

diretamente a atividade exercida por cada pessoa. Por isto, dois atletas que praticam

diferentes modalidades de esporte, mesmo tendo os mesmos valores de somatotipo, pro-

vavelmente terao corpos diferentes.

Conforme informado na secao 4.2, para cada um dos somatotipos dominantes,

e possıvel informar mais de uma tabela de dimensoes, de forma a permitir uma maior

diversidade de formas. Pode-se, por exemplo, criar tabelas de medidas de um corpo com

Page 50: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

49

abdomen grande e outra tabela para um corpo de coxas e nadegas grandes para o mesmo

somatotipo endomorfo dominante. Neste caso, e escolhida aleatoriamente uma tabela

para cada um dos tipos dominantes (endomorfo, mesomorfo e ectomorfo), denominadas

S1, S2 e S3. Sendo S1endo, S1meso e S1ecto os tres componentes do somatotipo dominante

S1 (equivalente para S2 e S3).

Para calcular a influencia de cada um dos somatotipos dominantes, ou peso W

(com componentes Wendo, Wmeso e Wecto), iguala-se o novo valor do novo somatotipo

(NS) com o produto da matriz composta dos tres somatotipos de exemplo (S1, S2 e S3)

pelo peso desejado (W ), conforme a equacao:

S1endo S2endo S3endo

S1meso S2meso S3meso

S1ecto S2ecto S3ecto

·

Wendo

Wmeso

Wecto

=

NSendo

NSmeso

NSecto

(4.3)

Esta equacao, representando a contribuicao de cada um dos somatotipos dominan-

tes, gera uma equacao de tres equacoes e tres incognitas. O peso de cada um deles (Wendo,

Wmeso e Wecto) e estimado atraves da resolucao deste sistema de equacoes, resolvida neste

trabalho atraves de eliminacao gaussiana.

O peso correspondente para cada somatotipo utilizado na variacao das partes do

corpo, conforme mostra a proxima secao.

4.5 Variacao do modelo geometrico base

As tabelas de dimensoes corporais dos somatotipos dominantes, contidos no tem-

plate, sao utilizadas para definir as novas dimensoes de cada uma das partes do perso-

nagem em cada uma das direcoes (altura, largura e profundidade). As dimensoes e os

pesos associados aos somatotipos dominantes sao usados como combinacao linear para

determinar a forma corporal do novo personagem.

Primeiro, a nova dimensao (ND - New Dimension) de cada parte do corpo (p)

Page 51: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

50

e calculada como funcao das medidas da parte (PS - Part Size) correspondente nos

somatotipos dominantes e do peso associado aos mesmos. A nova dimensao em cada uma

das direcoes i (altura, largura e profundidade) da parte do corpo e a soma do produto

entre o peso e dimensao de cada um dos somatotipos na mesma parte do corpo e dimensao,

conforme equacao abaixo:

NDpi= Wendopi

· PSendopi+ Wmesopi

· PSmesopi+ Wectopi

· PSectopi(4.4)

Assim, a forma do corpo varia de acordo com a combinacao dos somatotipos do-

minantes para criar o novo personagem. Portanto, se existir mais de uma tabela de

dimensoes para cada um dos somatotipos dominantes, os mesmos valores de somatotipo

criarao formas diferentes de corpos, trazendo maior diversidade para os resultados.

A variacao da geometria e realizada de forma similar ao trabalho de Azuola (AZU-

OLA et al., 1994), mas o numero de partes nao e fixa pois utiliza o proprio esqueleto do

modelo geometrico base, permitindo a criacao de qualquer tipo de geometria. O somato-

tipo ira entao definir a forma do novo corpo a ser criado, atraves da alteracao das partes

do corpo do personagem a ser gerado.

Depois de definida a nova dimensao de cada parte (NDpi), e estimada a variacao

(V ariation) que o modelo geometrico base devera sofrer, indicando o fator de cresci-

mento em cada uma das direcoes i. O template contem uma tabela de dimensoes do

modelo geometrico base, que sera utilizada para modificar a sua forma. A variacao, em

cada uma das partes do corpo, e determinada pela razao entre a nova dimensao calculada

e a dimensao do modelo geometrico base (BD - Base Dimension). Alem disso, tambem

e adicionado um pequeno valor aleatorio (rand) para aumentar a diversidade dos mode-

los gerados, conforme equacao 4.5. O principal objetivo desta aleatoriedade e evitar a

criacao de modelos completamente iguais. Sem esta aleatoriedade, isto poderia ocorrer se

fossem informados os mesmos valores de altura e peso, bem como se fossem utilizados os

mesmos somatotipos dominantes. Esta equacao e aplicada a cada uma das direcoes i de

Page 52: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

51

crescimento (altura ou comprimento, largura e profundidade), calculando a variacao em

cada uma das partes:

V ariationpi=

NDpi

BDpi

+ rand (4.5)

Apos calculada a variacao que o modelo geometrico base devera sofrer em cada uma

de suas partes (V ariationpi), os vertices que compoem a malha do modelo geometrico sao

deformados para a criacao do novo personagem, conforme descrito na proxima secao.

4.6 Criacao da nova geometria

Primeiramente, o modelo geometrico base e inteiramente escalado para alcancar a

altura desejada. Esta escala e feita uniformemente para nao haver deformacao do modelo

geometrico. Se a geometria fosse escalada somente na altura (esticada), as partes do corpo

seriam deformadas (a cabeca seria alongada mudando a fisionomia, por exemplo).

Para calcular quanto o novo modelo sera aumentado, e calculada a razao (HR -

Height Ratio) entre a altura do template (TH - Template Height) e a altura do novo perso-

nagem (CH - Customized-model Height): HR = CH/TH. Assim, cada um dos vertices

da malha do modelo sao multiplicados por esta razao para o novo modelo geometrico

atingir a altura desejada.

Apos escalado o corpo inteiro uniformemente, cada uma das partes do corpo sera

escalada diferentemente para atingir o formato desejado do personagem a ser criado. sao

realizadas entao escalas nos vertices de cada uma das partes do modelo geometrico original,

de acordo com a variacao calculada na secao anterior. Para calcular a nova posicao de

cada vertice (v) do modelo geometrico, utiliza-se a variacao calculada anteriormente em

parte do corpo p e direcao i (V ariationpi) e a influencia (Influence) da parte do corpo

p no vertice v, conforme equacao 4.6.

Page 53: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

52

v = v · V ariationpi· Influence[pv] (4.6)

A influencia de cada um dos vertices ligados a um osso indica como este ira variar se

o osso tambem variar. Assim, alem das partes variarem diferentemente entre si, a mesma

parte sera escalada de maneira nao uniforme, nao gerando descontinuidade no modelo

geometrico do novo personagem. Estas influencias sao obtidas do modelo geometrico do

template, exportado pelo artista atraves de um programa de modelagem (3D Studio ou

Maya, por exemplo).

Baseado nos dados de entrada, o modelo e capaz de gerar simultaneamente uma

grande variedade de personagens, aplicando o mesmo esqueleto do template escolhido.

Quanto a estrutura da geometria, o modelo apresentado neste trabalho nao tem nenhuma

restricao a respeito da topologia, numero de vertices ou hierarquia. O modelo e capaz

de manipular geometrias com qualquer estrutura hierarquica ou esqueleto, desde que as

medidas dos somatotipos de exemplo sejam geradas de acordo com o esqueleto do tem-

plate. No capıtulo 5, serao apresentados alguns resultados no qual os modelos utilizados

possuem hierarquias diferentes assim como tambem apresentam um numero diferente de

polıgonos.

A figura a seguir ilustra de forma resumida os passos realizados pelo modelo para

geracao de personagens virtuais.

Page 54: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

53

Figura 15: Passos para criacao de diversidade populacional.

4.7 Outros aspectos do modelo

A fim de criar uma maior diversidade visual, os templates podem conter um ou

mais conjuntos de materiais, conforme visto na secao 4.2. Cada novo personagem criado e

definido utilizando um dos conjuntos de materiais contidos no template, o qual e escolhido

aleatoriamente. Na figura 16 sao mostrados dois modelos masculinos e dois femininos,

onde para cada um dos templates utilizados (um masculino e outro feminino) foram

associados dois materiais diferentes. A geometria dos modelos utilizados nesta imagem

nao sofreram nenhuma alteracao a fim de nao influenciar na analise visual.

Page 55: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

54

Figura 16: Quatro conjuntos de materiais diferentes.

A qualidade esperada dos resultados obtidos pela utilizacao deste modelo depende

da aplicacao que e dada a ele. Por exemplo, quando os artistas modelam um personagem

principal para producao de filmes, eles estao interessados nos detalhes e particularidades

do modelo especıfico, que provavelmente nao devera ser baseado em templates. Entre-

tanto, o objetivo deste trabalho e gerar personagens que possam ser diretamente aplicado

a jogos, simulacoes em tempo real e mesmo em personagens secundarios para producao

de filmes.

Na proxima secao sera apresentado como os agentes sao animados.

4.7.1 Animacao dos personagens virtuais

Cada personagem criado recebe automaticamente parametros comportamentais

que permitem sua animacao individualizada. O objetivo e prover um metodo que propor-

cione a animacao facil e automatica dos humanoides gerados.

Varios modelos poderiam ser considerados para realizar diferentes animacoes para

os personagens, como por exemplo utilizar as informacoes de entrada do modelo, como

peso, idade, estatura e forma para modificar as animacoes. No entanto, optou-se por criar

agentes com informacoes emocionais de maneira que humanoides felizes caminhassem

Page 56: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

55

automaticamente diferentes de humanoides tristes. Como o foco deste trabalho nao e o

tratamento de modelos comportamentais de emocoes, mas isto serve apenas como um

acrescimo a diversidade visual, resolveu-se adotar um modelo simples ja utilizado no

laboratorio CROMOS1. Portanto, empregou-se um metodo parametrico que permite gerar

animacoes diferenciadas atraves do estado emocional dos agentes.

A aplicacao dos estados emocionais faz com que cada um dos personagens possa ser

animado diferentemente baseado em sua emocao. Assim, mesmo que dois ou mais agentes

estejam realizando um mesmo movimento (caminhando, por exemplo), e visualmente

interessante que eles tenham diferentes tipos de animacoes. Assim, cada agente criado

tera um estado emocional diferente que influenciara a maneira como suas animacoes serao

executadas. Nesta secao, sera explicado como as animacoes dos personagens sao alteradas

baseadas no seu estado emocional.

Para representar os atributos emocionais dos agentes, foi aplicado o modelo emo-

cional proposto por Darwin (DARWIN, 1872), que caracteriza os estados emocionais por

um conjunto de tres variaveis: medo, raiva e felicidade. Neste trabalho foram utilizadas

estas tres variaveis atraves de valores normalizados entre 0 e 1. Valor zero para medo

significa que o agente esta se sentindo seguro (tranquilo) e valor um significa que ele esta

em panico. Valor zero para raiva indica que o agente esta calmo e valor um, que ele

esta enfurecido. Valor zero para alegria, o agente esta triste e valor um, ele esta muito

feliz. Um sentimento neutro e representado por: zero para medo, zero para raiva e 0,5

para alegria (nem triste nem feliz). Todos os agentes criados sao inicializados com um

comportamento neutro.

Os estados emocionais dos personagens sao distribuıdos aleatoriamente de acordo

com uma distribuicao normal, tornando facil a criacao de estados emocionais variados na

populacao criada. Quando a informacao sobre os estados emocionais dos agentes e gerada,

toda informacao sobre a populacao esta completa: modelos geometricos representando a

forma do corpo, materiais e estados emocionais.

1http://www.inf.unisinos.br/ graphit/cromoslab

Page 57: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

56

Assim, o personagem esta pronto para ser animado. Para cada hierarquia de

esqueleto diferente utilizada nos testes, foram criadas cinco animacoes. Uma para cada

um dos valores extremos das emocoes, considerando que os valores zero de raiva (calmo) e

zero de medo (tranquilo) e a mesma animacao. As tres variaveis sao relacionadas em um

grafico de tres dimensoes onde cada um dos eixos representa uma das emocoes do modelo.

A figura 17 mostra as emocoes extremas e agentes com estas emocoes aplicadas.

Quando um animador criar os movimentos, a unica restricao ao produzir as

animacoes e que elas sejam criadas com: poses inicial e final iguais (para gerar um ciclo),

todas as animacoes iniciem com poses semelhantes e com o mesmo numero de passos de

movimentacao. Por exemplo, na animacao de caminhada usada como teste do modelo,

todas as animacoes (normal, medo, raiva, felicidade e tristeza) iniciam com a perna direita

para frente e o braco direito para tras. Todas formadas por quatro passos. Esta restricao

nao e do modelo apresentado neste trabalho, mas sim pelas bibliotecas de animacao.

O numero de quadros das animacoes ou a velocidade dos passos nao precisam ser

iguais, pois as funcoes de composicao das animacoes tratam destas diferencas. Pode-se

entao utilizar velocidades diferentes em cada uma das animacoes dependendo do estado

emocional desejado. Por exemplo, uma animacao de caminhada triste pode ter uma

velocidade menor do que uma caminhada feliz, para que um agente triste represente

menos animo para se mover.

Page 58: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

57

Figura 17: Diferentes caminhadas resultantes de valores diferentes de raiva, medo e feli-

cidade

Para fazer a combinacao das animacoes, e preciso informar quais animacoes serao

utilizadas e qual o percentual de influencia de cada uma delas. Esta informacao nao e

obtida diretamente dos valores de estado emocional do agente, mas atraves de um calculo

para transformar estes valores em percentagens para cada uma das cinco animacoes gera-

das. Assim, e informado a biblioteca de animacao como o estado emocional do personagem

gerado sera composto, realizado pelo componente de animacao apresentado no capıtulo

5.

No proximo capıtulo serao apresentados alguns resultados obtidos ate o presente

momento atraves do modelo proposto neste trabalho.

Page 59: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

58

5 PROTOTIPO E RESULTADOS

Para implementar o modelo proposto, foi construıdo um prototipo utilizando a

linguagem de programacao C++, a biblioteca FLTK1 para criacao das interfaces e as

bibliotecas openGL2 e CAL3D3 para visualizacao e animacao dos modelos geometricos.

O prototipo e formado por quatro componentes principais:

• Ferramenta de geracao dos modelos geometricos atraves da distribuicao populaci-

onal. Este componente e utilizado para gerar os modelos geometricos a partir dos

dados informados na interface e dos templates existentes. Os dados de entrada da

interface sao: nome da populacao a ser criada e quantidade de personagens da po-

pulacao, percentuais de masculino e feminino na populacao, medias de idade, altura

e peso, assim como seus desvios padrao (figura 18 a esquerda).

• Ferramenta para modificacao dos estados emocionais dos personagens criados. Uti-

lizada para informar o estado emocional de cada um dos personagens criados pela

ferramenta de geracao dos modelos geometricos (figura 18 ao centro).

• Ferramenta para geracao de um unico personagem. Utilizada para criar um unico

personagem, informando valores precisos de: sexo, idade, altura, peso, somatotipo e

estado emocional (figura 18 a direita). Este componente e utilizado para realizacao

da analise microscopica do modelo, descrito na secao 5.1.

• Modulo de visualizacao. Carrega, visualiza e anima os arquivos de modelos

1http://www.fltk.org2http://www.opengl.org3http://cal3d.sourceforge.net

Page 60: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

59

geometricos criados pelas ferramentas de geracao de personagens.

Tambem foram criados alguns templates para se utilizar com o prototipo imple-

mentado, conforme especificado na secao 4.2. Foram criados quatro templates para teste

do modelo: um para criar modelos masculinos adultos, um para modelos femininos adul-

tos, um para meninos e outro para meninas. As alturas e pesos iniciais dos templates

foram preenchidos com valores empıricos. Os templates adultos foram configurados com

165 cm de altura, 55 Kg de peso e idade limite de 16 a 70 anos. Os templates infantis

foram configurados com 135 cm de altura, 45 Kg de peso e idades entre 4 a 15 anos.

Nao foram criados templates para criancas menores de 4 anos, ou bebes, bem como para

idosos. Mas isso nao implica em nenhuma restricao do modelo, sendo apenas relacionado

a entrada de dados disponıvel. Os modelos acima possuem respectivamente 7386, 9016,

5814 e 8672 polıgonos.

Os arquivos que compoe cada um dos agentes criados estao no formato CAL3D,

e sao gravados separadamente, podendo existir mais de um arquivo de malha para cada

agente. Por isto, alem de gravar os arquivos que compoem a geometria dos personagens, e

gerado um arquivo (〈nome do personagem〉.cfg) para descrever cada um dos novos agen-

tes, seguindo um padao utilizado pelos exemplos do CAL3D. Este arquivo contem as

seguintes informacoes: nome dos arquivos de geometria (〈arquivo〉.cmf - Cal Mesh File),

nome do arquivo de esqueleto (〈arquivo〉.csf - Cal Skeleton File), nome dos arquivos de ma-

teriais (〈arquivo〉.crf - Cal Material File) e nome dos arquivos de animacao (〈arquivo〉.caf

- Cal Animation File). Este arquivo e utilizado pelo modulo de visualizacao e animacao

dos personagens.

Tambem sao gerados arquivos com informacoes sobre a populacao gerada

(〈nome〉.pop). Este arquivo e utilizado pelo modulo de visualizacao e contem os dados

que foram utilizados para gerar a populacao (informados na interface) e a caracterıstica

de cada um dos personagens criados: identificador, arquivo de descricao do personagem

(〈nome do personagem〉.cfg), sexo, idade, altura, peso e seus estados emocionais (raiva,

Page 61: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

60

medo e felicidade).

A entrada de dados dos estados emocionais dos agentes criados e informada atraves

de uma interface (figura 18 ao centro). Nela e possıvel definir o estado emocional de um

agente, de um grupo de agentes ou da populacao como um todo. A configuracao dos

estados emocionais de cada um dos agentes e salva no arquivo que descreve a populacao

(.pop) junto com as informacoes de caracterısticas fısicas dos agentes. Assim, o modulo

de visualizacao pode ler uma populacao inteira para visualizacao, utilizando os valores de

estado emocional para animar os personagens.

Figura 18: Interfaces para geracao da populacao e seus estados emocionais

Nas proximas secoes serao examinados alguns resultados obtidos utilizando o

prototipo implementado. A validacao deste sistema e uma tarefa difıcil devido a subjeti-

vidade do problema que este trabalho se propoe a resolver. Como estabelecer a validade

dos resultados, ja que o que se quer e criar modelos geometricos que sejam esteticamente

coerentes? O que pode parecer um resultado aceitavel para uma pessoa pode nao ser

para outra. O que se pretende e mostrar alguns resultados obtidos usando a ferramenta

em dois pontos de vista. O primeiro, e atraves da especificacao de dados especıficos de

somatotipo de pessoas reais, proceder com a criacao do personagem e verificar visual-

Page 62: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

61

mente se o resultado e coerente com o desejado (analise microscopica). Sob o ponto de

vista macroscopico, a analise sera feita a partir de uma unica distribuicao de entrada,

quando sera criada uma populacao bastante diversificada mantendo a coerencia visual da

populacao gerada como um todo. Nas proximas secoes serao apresentados estes dois tipos

de analise.

5.1 Analise Microscopica

Nesta analise serao mostrados individualmente alguns modelos gerados juntamente

com os valores que foram informados para sua criacao. Desta forma, pode-se verificar se

a geracao dos novos modelos esta respeitando os dados de entrada e se a forma do perso-

nagem esta coerente com estes dados. Ainda, na medida do possıvel, serao apresentadas

fotos de pessoas reais para prover subsıdios para a comparacao.

Esta e uma analise mais apurada, pois se pode verificar se os resultados do modelo

estao de acordo com o esperado, sob o ponto de vista visual. Como ja foi discutido no

capıtulo 4, o somatotipo e um metodo para descrever a forma e nao define como sao as

dimensoes especıficas de cada parte do corpo, ja que as pessoas nao engordam nem aumen-

tam a musculatura da mesma maneira. Embora pessoas de mesmo somatotipo possam

ter diferentes formas, a variacao nao e muito grande, sendo normalmente caracterizada

por variacoes em algumas poucas partes do corpo. Portanto, com esta analise espera-se

verificar se os modelos gerados sao aceitaveis esteticamente e se a geracao dos modelos

esta ocorrendo de forma correta.

O criterio utilizado para realizacao da analise microscopica foi o de comparar fotos

de pessoas reais com imagens dos modelos geometricos gerados utilizando-se os mesmos

valores de altura, peso e somatotipo. A forma do corpo da pessoa real e do modelo

geometrico gerado nao deve ser muito diferente. Comparando visualmente, pode-se per-

ceber se a geracao esta de acordo com o esperado. Para um mesmo somatotipo, nao

devem ser geradas formas muito diferentes de corpos. Assim, a aparencia dos modelos

Page 63: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

62

geometricos gerados nao deve divergir muito da forma de uma pessoa real com os mesmos

valores de somatotipo.

A seguir sao expostas algumas imagens de personagens masculinos e femininos

criados pelo modelo apresentado neste trabalho e confrontadas com fotos de pessoas reais,

retiradas de (HEATH; CARTER, 1990). Utilizando a ferramenta de criacao de um unico

personagem, foram utilizadas as mesmas informacoes de altura, peso e somatotipo da

pessoa original apresentada. Estas informacoes sao especificadas em todas as figuras

abaixo.

Para os modelos masculinos, foi utilizada apenas uma tabela de dimensao para

cada um dos somatotipos dominantes. As figuras abaixo ilustram alguns exemplos de

corpos criados com apenas tres tabelas de dimensao. A figura 19 mostra a foto do corpo

de um homem forte e a imagem da geometria gerada pelos mesmos valores de altura,

peso e somatotipo. A figura 20 apresenta como seria o corpo da mesma pessoa caso fosse

ainda mais forte (mesomorfo dominante), onde pode-se perceber um aumento do torax

em funcao da variacao do somatotipo, e pouca variacao de peso.

Figura 19: Foto e geometria de homem forte (altura: 173,2 cm; peso: 80,7 Kg; somatotipo:

2-8-1)

Page 64: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

63

Figura 20: Modelo geometrico de um mesomorfo dominante (altura: 173,2 cm; peso: 85,0

Kg; somatotipo: 12-91

2-12)

A figura 25 apresenta a foto de um homem magro e a geometria criada por este

modelo utilizando os mesmos valores antropometricos de altura, peso e somatotipo. Caso

esta pessoa engordasse bastante, ficaria como ilustrado na figura 22.

Figura 21: Foto e geometria de um homem magro (altura: 182,5 cm; peso: 51,4 Kg;

somatotipo: 112-2-71

2)

Page 65: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

64

Figura 22: Modelo geometrico de um endomorfo dominante (altura: 182,5 cm; peso Kg:

102,0; somatotipo: 9-1-12)

A figura 23 apresenta a foto de um homem com altos valores de mesomorfia e

endomorfia e a geometria criada utilizando os mesmos valores de altura, peso e somatotipo.

Caso esta pessoa diminuisse tanto sua mesomorfia quanto sua endomorfia, ficaria com o

corpo de uma pessoa normal (media da populacao) como mostra a figura 24.

Figura 23: Foto e geometria de um homem forte e gordo (altura: 171,5 cm; peso Kg:

100,5; somatotipo: 4-8-12)

Page 66: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

65

Figura 24: Modelo geometrico de um homem mediano (altura: 171,5 cm; peso Kg: 63,8;

somatotipo: 4-4-3)

Como ja foi descrito no capıtulo 4, existem diferentes formas das pessoas ganha-

rem ou perderem peso, devido as diferentes caracterısticas metabolicas e hormonais. No

modelo apresentado nete trabalho, estas diferentes formas podem ser definidas no tem-

plate informando mais de uma tabela de dimensoes para um determinado somatotipo

dominante. Para ilustrar o resultado disto, nos modelos femininos foram utilizadas duas

tabelas de dimensoes para endomorfo dominante: A primeira foi criada para gerar corpos

cujas partes que mais engordam estao localizadas nos quadris, nadegas e coxas e a outra

tabela de dimensoes define o corpo de uma mulher que engorda uniformemente em todo

o corpo. Poderiam ser utilizadas tabelas de dimensoes parea outros tipos de corpos, mas

novamente foi tomado o cuidado de garantir que a diversidade de formas mostradas sao

em consequencia do modelo apresentado e nao pela utilizacao de uma variedade de formas

informadas atraves de diferentes tabelas de dimensoes para cada somatotipo dominante.

A figura 25 apresenta um corpo de uma mulher magra e o modelo geometrico

criado utilizando os mesmos valores de altura, peso e somatotipo. Na figura 26, que

apresenta como seria o corpo da mesma pessoa caso ela tivesse um aumento consideravel

de massa muscular (mesomorfo dominante), pode-se notar um aumento principalmente

na musculatura do torax.

Page 67: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

66

Figura 25: Foto e geometria de uma mulher magra (altura: 176,1 cm; peso Kg: 55,4;

somatotipo: 112-31

2-51

2)

Figura 26: Modelo geometrico de uma mulher forte (altura: 176,1 cm; peso Kg: 75,0;

somatotipo: 112-7-2)

A figura 27 a esquerda, apresenta um corpo de uma mulher normal que possi-

velmente tem maior tendencia de engordar nas partes localizadas nos quadris, nadegas

e coxa. A figura da direita mostra o modelo geometrico criado utilizando a tabela de

dimensoes (para endomorfo dominante) que representa esta mesma forma de corpo. Se

esta pessoa engordasse, uma forma de corpo provavel para ela seria como o da figura 28.

Page 68: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

67

Figura 27: Foto e geometria de uma mulher normal (altura: 168,2 cm; peso Kg: 56,5;

somatotipo: 412-21

2-31

2)

Figura 28: Modelo geometrico de uma mulher gorda (altura: 168,2 cm; peso Kg: 79,0;

somatotipo: 812-2-1

2)

A figura 29 mostra a foto de uma mulher e a imagem gerada utilizando os mesmos

valores antropometricos de altura, peso e somatotipo. Utilizando o mesmo somatotipo

da figura 28, mas agora utilizando a tabela de dimensoes para para engordar de forma

uniforme, e gerada a geometria mostrada na figura 30.

Page 69: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

68

Figura 29: Foto e geometria de uma mulher mediana (altura: 161,0 cm; peso Kg: 63,7;

somatotipo: 6-4-1)

Figura 30: Modelo geometrico de uma mulher gorda (altura: 161,0 cm; peso Kg: 70,0;

somatotipo: 812-2-1

2)

Para realizar a analise microscopica do modelo, tambem foi utilizado um outro

template, utilizando um modelo geometrico de baixa resolucao ja existente no laboratorio

CROMOS, criados anteriormente para o projeto Simulador de Emergencias (BARROS;

SILVA; MUSSE, 2004). A figura 31 mostra exemplos de resultados obtidos pela utilizacao

deste modelo de baixa resolucao. A primeira figura mostra o modelo original, e as ou-

tras tres apresentam o resultado obtido mostrando exemplos de endomorfo dominante,

ectomorfo dominante e mesomorfo dominante, respectivamente. Estes modelos nao fo-

Page 70: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

69

ram criados para este fim, mostrando que o modelo apresentado neste trabalho pode ser

generico o suficiente, nao necessitando ser utilizadas geometrias especıficas para o modelo.

Figura 31: Personagem de baixa resolucao

5.1.1 Personagens nao humanos

Em muitos jogos e filmes (como Antz e Lord of the Rings, por exemplo) sao uti-

lizadas multidoes de personagens virtuais nao humanos. Nestes exemplos, para nao ser

preciso modelar cada um dos personagens separadamente, a solucao foi utilizar perso-

nagens iguais ou com pouca variacao na aparencia. Assim, e utilizado o mesmo modelo

geometrico para apresentar uma multidao de personagens virtuais. Como o objetivo deste

trabalho e a criacao de diversidade populacional, e interessante que o modelo seja capaz

de gerar tambem personagens nao humanos.

A fim de verificar a generalidade e robustez do modelo apresentado neste trabalho e

estender a sua utilidade, foram criadas populacoes de personagens nao humanos. A figura

32 mostra alguns personagens criados com este trabalho a partir de um mesmo modelo

geometrico. A primeira figura mostra o modelo original, e as outras quatro apresentam

o resultado obtido mostrando exemplos de endomorfo dominante, ectomorfo dominante,

mesomorfo dominante e de um personagem pequeno, respectivamente.

Page 71: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

70

Figura 32: Personagem nao humano

Embora o somatotipo seja um metodo para classificacao de forma corporal de seres

humanos, verificou-se que utilizando o nosso modelo para engordar/emagrecer e fortale-

cer/enfraquecer um personagem, e possıvel a criacao de geometrias de variadas formas,

sejam humanas ou nao. Assim, utilizando o modelo apresentado neste trabalho, seria

possıvel, por exemplo, a criacao de um exercito (como o do filmes Antz) de diferentes

formas fısicas e consequentemente com maior diversidade visual. Personagens muito di-

ferentes de seres humanos, por exemplo girafas e leopardos, provavelmente seriam mais

complicados de serem gerados atraves de somatotipos.

5.2 Analise Macroscopica

O objetivo desta secao e expor o resultado obtido atraves de um ponto de vista

macroscopico, mostrando uma populacao grande criada atraves de um conjunto mınimo

de templates de entrada para realizar uma analise visual do resultado. Assim, pode-se

verificar se foi atingido o objetivo de gerar automaticamente uma diversidade populacional

com coerencia visual baseado em somatotipo.

Para realizacao destes testes, foi tomado o cuidado de se utilizar um conjunto

pequeno de templates, pois se o numero de templates fosse maior, a diversidade seria

maior em consequencia da utilizacao de maior variedade de modelos de origem, e nao

em consequencia do modelo apresentado neste trabalho. Sao mostradas duas imagens

Page 72: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

71

para apresentar os resultados da analise macroscopica. A primeira (figura 33), mostra

os resultados obtidos com os modelos feitos para este trabalho sem texturas no corpo, a

fim de visualizar melhor a variacao geometrica. A figura 34, mostra os mesmos modelos

com as texturas, para mostrar o resultado da diversidade. Sao disponibilizados alguns

vıdeos456 para se visualizar as diferentes animacoes de acordo com os estados emocionais

dos personagens gerados.

As informacoes de caracterısticas fısicas utilizadas para especificar a geracao da

populacao do teste realizado foram os seguintes:

Population name: Teste

Amount of models: 100

Gender: 50% male — 50% female

Mean age: 15 (standard deviation: 10)

Mean height (cm): 150 (standard deviation: 30)

Mean weight (Kg): 60 (standard deviation: 35)

As configuracoes dos estados emocionais foram aplicadas em toda populacao, sendo

informada na interface os seguintes dados:

Fear: 0.5 (standard deviation: 0.5)

Anger: 0.5 (standard deviation: 0.5)

Happiness: 0.5 (standard deviation: 0.5)

Nas figuras a seguir sao mostrados os resultados obtidos a partir das informacoes

4http://www.inf.unisinos.br/˜graphit/cromoslab/andre1.avi (modelos sem texturas no corpo)5http://www.inf.unisinos.br/˜graphit/cromoslab/andre2.avi (modelos com texturas no corpo)6http://www.inf.unisinos.br/˜graphit/cromoslab/andre3.avi (modelos de poucos polıgonos)

Page 73: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

72

listadas anteriormente. Na figura 33 sao mostrados os modelos sem a textura no corpo

para nao interferir na visualizacao da diferenca na geometria dos modelos. A figura 34

mostra o resultado obtido com as texturas aplicadas.

Figura 33: Populacao sem textura no corpo

Page 74: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

73

Figura 34: Populacao com textura

5.3 Desempenho

A seguir sao apresentados resultados de performance obtidos utilizando os

prototipos desenvolvidos com o modelo proposto. Sao mostradas comparacoes entre os

modelos de menos polıgonos com os de maior numero de polıgonos mostrando o tempo

de execucao na criacao de algumas populacoes de diferente numero de modelos.

A primeira e segunda tabelas mostram o numero de polıgonos e o tamanho dos

arquivos de malhas para cada um dos templates dos dois tipos de populacoes utilizadas:

baixo numero de polıgonos (baixa resolucao) e com maior numero de polıgonos (alta

resolucao). A terceira tabela mostra os tempos obtidos, utilizando um computador com

a seguinte configuracao: Pentium 4 de 3.0 MHz e 1Gb de memoria RAM.

Page 75: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

74

Template Alta resolucao Baixa Resolucao

Masculino Adulto 7386 694

Feminino Adulto 9016 686

Menino 5814 684

Menina 8672 684

Tabela 1: Numero de polıgonos dos templates

Template Alta Resolucao Baixa Resolucao

Masculino Adulto 346 52

Feminino Adulto 413 52

Menino 291 52

Menina 420 52

Tabela 2: Tamanho dos templates (Kb)

Numero de geometrias Alta resolucao Baixa Resolucao

(template masculino adulto) com I/O sem I/O com I/O sem I/O

1000 26 12 4 2

5000 128 61 19 9

10000 256 176 39 18

50000 1274 596 195 149

100000 2620 1114 388 184

Tabela 3: Tempo de execucao para criacao dos personagens (segundos)

Pode-se observar que a geracao de uma diversidade populacional pode ser realizada

em um tempo razoavelmente baixo. Com a entrada de alguns poucos parametros, sao

criados em segundos uma grande quantidade de personagens de variadas aparencias e

Page 76: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

75

estados emocionais (consequentemente, varias animacoes). Esta tarefa, naturalmente,

seria muito mais demorada, caso tivesse que ser realizada manualmente por artistas.

Page 77: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

76

6 CONCLUSAO

Este trabalho apresentou um modelo para geracao simultanea de uma diversidade

de personagens virtuais, de forma simples e rapida. Os modelos geometricos criados sao

realistas esteticamente, utilizando-se de um padrao existente e consolidado para clas-

sificacao de tipos fısicos. Para isto, utilizou-se o modelo de somatotipo que, na area

de cineantropometria, visa classificar tipos fısicos de seres humanos. O modelo apre-

sentado neste trabalho utiliza um conjunto mınimo de dados antropometricos e modelos

geometricos base, cujas diferentes partes do corpo variam de forma nao uniforme, gerando

uma grande variedade de personagens, respeitando os parametros de entrada. Alem disso,

os modelos geometricos gerados sao considerados em associacao com os esqueletos e podem

ser automaticamente animados.

Em resumo, podem-se especificar as seguintes contribuicoes deste trabalho para a

criacao automatica de modelos de personagens virtuais:

• Criar personagens validos visualmente baseados em um modelo biologico consoli-

dado para classificacao de corpos, denominado de somatotipo;

• Gerar simultaneamente, de acordo com um conjunto mınimo de dados estatısticos

e antropometricos informados, uma diversidade populacional de forma simples e

rapida (secao 5.3), gerando personagens visualmente aceitaveis com uma mınima

intervencao do usuario. Podem ser geradas grandes quantidades de modelos

geometricos de humanos virtuais diferentes uns dos outros, possibilitando a criacao

de todas as formas possıveis de corpos;

Page 78: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

77

• O numero de partes do corpo do modelo geometrico base nao apresenta restricoes

ou pre-definicoes, pois utiliza o proprio esqueleto do modelo geometrico para criar

personagens novos. A forma do corpo e a hierarquia do esqueleto sao definidas

livremente e geradas de acordo com o objetivo e a necessidade da aplicacao a ser

desenvolvida.

• O modelo apresentado neste trabalho pode ser utilizado para criacao de personagens

de qualquer numero de vertices (qualquer resolucao). O numero de vertices dos per-

sonagens a serem gerados dependera unica e exclusivamente do modelo geometrico

base.

• Os personagens gerados pelo metodo apresentado neste trabalho podem ser auto-

maticamente animados, visto que os modelos geometricos sao criados com a malha

associada a um esqueleto. Sendo assim, nao e necessaria uma posterior intervencao

do usuario para que o modelo geometrico criado passe por um processo exaustivo

e complexo a fim de ligar a malha a um esqueleto, para que o personagem gerado

possa ser posteriormente animado.

• Embora o somatotipo seja um metodo para classificacao de forma corporal de seres

humanos, verificou-se que a criacao de geometrias de personagens nao humanos

tambem e possıvel pela utilizacao deste modelo.

Algumas consideracoes podem ser feitas sobre o modelo apresentado tendo em vista

sua utilizacao no decurso deste trabalho:

• E preferıvel que o modelo geometrico base seja gerado com uma forma mediana. Se

a geometria criada tiver a forma de um personagem muito magro, ao se deformar

a malha para gerar um personagem gordo, o aspecto visual pode nao ser tao bom

quanto a um outro gerado com uma forma normal.

• Para alteracao dos vertices do modelo geometrico base, sao utilizadas as influencias

que estes vertices sofrem de cada osso do esqueleto em associacao com a malha

Page 79: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

78

(secao 4.6). E possıvel que ocorram algumas saliencias na geometria de um novo

personagem gerado devido a valores de influencias mal ajustados, principalmente nas

juntas que sofrem influencia de mais de dois ossos (ombro e pelvis, por exemplo). Sao

as regioes nas quais os projetistas tem maior dificuldade em ajuste destas influencias.

Estes vertices normalmente nao sofrem muito deslocamento quando o personagem

e animado, fazendo com que o erro seja pouco perceptıvel. Para nao ocorrerem

saliencias nas geometrias dos novos personagens, as influencias dos vertices devem

estar corretamente ajustadas.

• Ao serem geradas animacoes para os personagens, e importante observar que as

novas geometrias criadas sofrerao alteracoes na sua forma. Quando um modelo

geometrico de um personagem gordo recebe a mesma animacao de um agente ma-

gro, e comum que algumas partes entrem uma dentro da outra (self collision),

principalmente nos bracos e pernas.

• A avaliacao visual da diferenca entre as formas dos corpos dos personagens gerados

nao e obvia, pois a variacao pode ser bastante sutil, ja que duas pessoas com soma-

totipos proximos possuem forma muito similar. Caso seja necessaria a criacao de

uma populacao com bastante variedade de formas, os somatotipos escolhidos para

criacao desta populacao devem ser bem distintos entre si.

• Quando e realizada a distribuicao de valores para criacao de uma populacao (idade,

altura, peso e somatotipo), pode ocorrer a geracao de valores incompatıveis de al-

tura e peso (por exemplo: 120 cm de altura e 200 Kg). Esta incompatibilidade e

facilmente resolvida garantindo a criacao de somente os personagens com valores de

HWR validos (entre 29,75 e 50,91 (NORTON; OLDS, 1996)). A relacao entre altura

e idade e uma questao em aberto. No prototipo implementado neste trabalho, os va-

lores de idade foram ordenados de acordo com as alturas. Desta forma, personagens

mais novos tem alturas menores, nao gerando criancas maiores que adultos.

Foi apresentado neste trabalho um prototipo para implementacao do modelo pro-

Page 80: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

79

posto, mostrando alguns exemplos de personagens gerados. Conforme os resultados al-

cancados ate o momento, pode-se afirmar que a utilizacao deste modelo apresentou resul-

tados aceitaveis, criando simultaneamente uma grande quantidade de modelos geometricos

de forma simples e rapida.

Como resultado deste trabalho, foi apresentada uma exibicao no Santander Cultu-

ral em agosto de 2004. Nesta apresentacao, o publico descrevia atraves de uma interface

valores para idade, altura, peso e estado emocional e era gerado um humanoide com a

mesma caracterıstica fısica informada. As texturas para o corpo foram geradas atraves

do modelo MClone (WALTER; FOURNIER; MENEVAUX, 2001). As figura 35 apresenta

fotos desta mostra.

Figura 35: Mostra “Humanos Virtuais” no Santander Cultural

Atraves dos resultados apresentados no capıtulo 5, pode-se observar que o modelo

apresentado neste trabalho consegue atingir satisfatoriamente seus objetivos quanto a

simplicidade, eficiencia e rapidez em gerar diversidade populacional com coerencia visual.

6.1 Restricoes e dificuldades

Durante o desenvolvimento deste trabalho, perceberam-se algumas dificuldades e

restricoes do modelo apresentado que serao discutidos nesta secao.

Page 81: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

80

6.1.1 Criacao dos templates

Para cada novo personagem criado, e escolhido um template que servira de base

para geracao da nova geometria. Nao e necessario que o modelo geometrico seja cons-

truıdo possuindo uma hierarquia de esqueleto ou topologia pre-definida. Mas ao criar

um template, devem ser informadas as dimensoes para cada uma das partes do corpo do

modelo geometrico original e para cada um dos somatotipos dominantes.

Depois de criar os templates, e possıvel gerar facilmente qualquer conjunto de po-

pulacoes que se deseje, mas esta e uma tarefa exaustiva que deve ser realizada. Para

melhor resultado, e importante que se procure encontrar medidas de pessoas com o so-

matotipo mais extremo possıvel (proximos aos somatotipos dominantes).

6.1.2 Deformacoes locais

Quando uma pessoa engorda ou emagrece muito, podem ocorrer algumas pequenas

variacoes na forma de cada uma das partes do corpo. Por exemplo: Se uma pessoa

emagrece muito, aparecerao saliencias na regiao do peito formado pelas costelas. De outra

forma, quando uma pessoa engorda muito, poderao aparecer dobras na parte abdominal

ou ate mesmo papada.

Este modelo nao trata especificamente destas pequenas deformacoes que ocorrem

em algumas partes do corpo, visto o objetivo de gerar personagens secundarios. Isto pode

ser feito fazendo um modelo geometrico com estas partes modeladas com um esqueleto no

qual existam ossos associados a estas pequenas partes. Por exemplo, se existir um osso

especıfico para a regiao da mandıbula, poderiam ser criadas tabelas de dimensoes para

geometrias com papadas. Mas esta nao e a forma usual de ser modelado um personagem

virtual.

Caso for necessario criar estas pequenas variacoes na geometria, isto pode ser feito

posteriormente, editando um modelo geometrico gerado por este trabalho e alterando a

sua geometria para criacao do detalhe pretendido.

Page 82: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

81

6.1.3 Personagens distintos

Quando se tem uma multidao de pessoas, e possıvel existir personagens com alguns

detalhes diferentes do resto da populacao, alem da forma e textura. O modelo apresentado

cria personagens de variadas formas, sem nenhuma particularidade diferente entre os

personagens e os templates de entrada. Nao e possıvel, por exemplo a partir de templates

de modelos femininos normais, criar uma geometria de mulher gravida. Para isto, deve

ser criado um template para mulheres gravidas. Tambem nao sao criadas deformacoes

na geometria como uma corcunda, outra proeminencia ou um defeito fısico qualquer

em alguma parte do corpo. Caso o usuario queira criar uma populacao com bastante

diversidade, poderia ser interessante criar automaticamente estas particularidades em

alguns dos modelos gerados.

Nosso modelo nao se propoe a criar personagens com este tipo de detalhe diferente,

pois o objetivo e a criacao de personagens secundarios para producao de jogos, simulacoes

e filmes. Partimos da hipotese que quando se deseja um personagem diferente, com

algum detalhe especıfico, provavelmente nao sera baseado em templates. Para obter um

personagem com uma caracterıstica especıfica, pode-se pegar um dos modelos gerados

automaticamente e alterar a sua geometria para adicionar o detalhe desejado.

6.2 Trabalhos futuros

Para facilitar a criacao dos arquivos de definicao de templates (secao 4.2), seria

interessante a criacao de uma interface, principalmente para gerar as tabelas de dimensoes

dos somatotipos dominantes. Poderia ser criada uma ferramenta onde as dimensoes fos-

sem informadas enquanto o usuario visualiza a alteracao da forma do modelo geometrico

base. Desta forma, mesmo que o criador do template nao tenha as dimensoes exatas das

formas de corpos de somatotipos dominantes, o usuario pode criar facilmente as tabelas

de dimensoes atraves de fotos de pessoas e seus respectivos somatotipos, como as fotos

apresentadas na secao 5.1 obtidas de (HEATH; CARTER, 1990).

Page 83: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

82

Para aumentar a diversidade de formas geradas pelo modelo, podem ser criadas

diferentes tabelas de dimensoes para cada somatotipo dominante. Se for criada uma

maneira de serem criadas novas tabelas automaticamente, a diversidade de corpos gerados

sera maior. Para criar novas tabelas de medidas, e possıvel utilizar somatotipos e medidas

criadas pelo proprio modelo para definir novas tabelas de dimensoes. Por exemplo, se o

template tiver apenas tabelas de dimensoes de uma pessoa com barriga grande e outra

para uma pessoa de quadril largo, apos sucessivas criacoes de novas tabelas de dimensoes,

poderia ser gerada uma nova tabela para definir o corpo de uma pessoa uniformemente

engorda.

Outra maneira de aumentar a diversidade de formas poderia ser atraves da com-

binacao das tabelas de dimensoes existentes para o mesmo somatotipo dominante. Ao

inves de ser escolhida aleatoriamente uma tabela para cada somatotipo dominante, seria

realizada uma interpolacao destas tabelas de dimensoes gerando uma nova forma (nova

tabela de dimensoes). Por exemplo: se o template definir uma tabela de dimensoes para

pessoas com barriga grande e outra para aquelas que tem quadris largos, uma interpolacao

possıvel e a criacao de valores de somatotipo e dimensoes que definem a forma do corpo

de uma pessoa com um pouco de barriga e quadril.

Alem disto, para aumentar ainda mais a diversidade criada, poderiam ser utilizadas

partes separadas de geometrias diferentes (por exemplo cabecas) para compor o perso-

nagem a ser criado, como utilizado no trabalho de Modesto et al (MODESTO; GIBBS;

RANGARAJU, 2001). Como a malha pode ser definida por arquivos separados, poderiam

ser definidos conjuntos de arquivos para as partes que podem ser substituıdos. Assim,

quando o modelo for utilizar a geometria do template para deformar e criar o novo perso-

nagem, sera escolhido um dos arquivos do conjunto de geometrias, como acontece com a

textura. Isto e mais util para arquivos de alta resolucao, onde a feicao do modelo e defi-

nida na geometria. Para modelos de baixa resolucao, normalmente as feicoes sao definidas

como textura, como pode ser observado na secao 5.1. Alem disto, os projetistas devem

criar, para cada um dos modelos geometricos base, varias geometrias que possam ser uti-

Page 84: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

83

lizadas em conjunto, dificultando a criacao dos templates. Como o objetivo do trabalho

foi propor um metodo para geracao de diversidade populacional utilizando somatotipo, e

nao apenas a implementacao de uma ferramenta para criacao de personagens, este metodo

nao foi implementado devido a dificuldade de criacao dos modelos geometricos e para nao

interferir no resultado do modelo proposto neste trabalho.

O modelo de classificacao corporal atraves do somatotipo e bastante utilizado para

definir a aptidao de um indivıduo para uma determinada atividade fısica. De acordo com

estudos de (HEATH; CARTER, 1990), jogadores de volei normalmente possuem classi-

ficacao somatotipologica central (os tres componentes iguais, proximo a 312-31

2-31

2) e judo-

cas normalmente sao classificados como endomesomorfos. Para criar grupo de pessoas com

valores de somatotipos proximos, gerando atletas de uma mesma categoria por exemplo,

pode-se criar uma interface para gerar corpos de formas semelhantes. Uma maneira de

fazer isto, e mostrando uma representacao 3D do espaco de somatotipos, permitindo que

o usuario selecione uma regiao deste espaco definindo os valores de somatotipos possıveis.

Outra maneira, seria definindo uma regiao em um grafico 2D chamado somatocarta, que

representa uma projecao do espaco de somatotipo em duas dimensoes. Ou ainda, de

maneira mais simples, informando um valor de somatotipo e definindo um raio para deli-

mitar a regiao dos valores possıveis para criacao dos somatotipos dos personagens a serem

gerados.

O uso de modelos de humanos virtuais em aplicacoes de computacao grafica tem

sido cada vez mais comum na atualidade. Normalmente, formas de pessoas com aspectos

realistas sao criadas atraves de um processo exaustivo e difıcil, devido a complexidade do

corpo humano. A criacao automatica de humanos virtuais nao e uma aplicacao nova, mas

e crescente o numero de pesquisas para geracao automatica de modelos geometricos de

humanos virtuais, buscando uma maneira de automatizar esta tarefa. Muitos dos traba-

lhos desenvolvidos nesta area exigem do usuario um amplo conhecimento sobre anatomia

humana ou exigem muita intervencao do usuario.

Page 85: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

84

Este trabalho apresentou um modelo capaz de criar uma diversidade populacional

de forma simples e rapida, gerando personagens visualmente aceitaveis com uma mınima

intervencao do usuario. Mais ainda, os modelos geometricos gerados sao considerados

em associacao com os esqueletos e podem ser automaticamente animados. A principal

aplicacao deste modelo e a geracao de personagens secundarios para jogos, simulacoes e

filmes, onde os projetistas podem criar e animar o maior numero de personagens o mais

rapido possıvel.

Page 86: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

REFERENCIAS

ALLEN, B.; CURLESS, B.; POPOVIC, Z. Articulated body deformation from rangescan data. In: Proceedings of ACM SIGGRAPH 2002. [S.l.]: ACM Press, 2002. p.612–619.

AMENTA, N.; BERN, M. Surface reconstruction by voronoi filtering. In: Proceedings ofDiscrete and Computational Geometry. [S.l.]: ACM Press, 1998. p. 481–504.

AMENTA, N.; KIL, Y. Defining point-set surfaces. In: Proceedings of SIGGRAPH. [S.l.]:ACM Press, 2004.

AZUOLA, F. et al. Building anthropometry-based virtual human models. In: Proceedingsof IMAGE Conf. [S.l.]: ACM Press, 1994.

BARROS, L. M.; SILVA, A. T. da; MUSSE, S. R. Petrosim: An architecture to managevirtual crowds in panic situations. In: Proceedings of Computer Animation and SocialAgents. [S.l.]: ACM Press, 2004.

CARNAVAL, P. E. Medidas e Avaliacao em Ciencias do Esporte. Rio de Janeiro: Sprint,1995.

DARWIN, C. Expression of the Emotion in Men and Animals. London: John Murray,1872.

DEKKER, L. 3D Human Body Modeling from Range Data. Tese (Doutorado) —University College London, 2000.

HEATH, B. H.; CARTER, J. E. L. Somatotyping - development and application. NewYork, USA: University of Cambridge Press, 1990.

HILTON, A. et al. Virtual people: Capturing human models to populate virtual worlds.In: Proceedings of Computer Animation. [S.l.]: ACM Press, 1999. p. 174–185.

KAKADIARIS, I.; METAXAS, D. 3d human body model acquisition from multipleviews. In: Proceedings of the Fifth International Conference on Computer Vision. [S.l.:s.n.], 1995. p. 618–623.

LEE, W.; GU, J.; MAGNENAT-THALMANN, N. Generating animatable 3d virtualhumans from photographs. In: Proceedings of Eurographics. [S.l.]: ACM Press, 2000. p.1–10.

LEE, W.; MAGNENAT-THALMANN, N. Virtual body morphing. In: Proceedings ofComputer Animation. [S.l.]: ACM Press, 2001.

LEWIS, M. Evolving human figure geometry. In: OSU-ACCAD-5/00-TR1. [S.l.]:ACCAD, The Ohio State University, 2000.

Page 87: Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens Virtuaisatavares/Dissertacao_Andre.pdf · Andr´e Tavares da Silva Gera¸c˜ao Autom´atica de Popula¸c˜oes de Personagens

MAGNENAT-THALMANN, N.; SEO, H.; CORDIER, F. Automatic modeling of virtualhumans and body clothing. In: Proceedings of SIGGRAPH. [S.l.]: ACM Press, 2003. p.19–26.

MODESTO, L.; GIBBS, J.; RANGARAJU, V. Generic character variations. Shrek: TheStory Behind the Screen, p. 15–37, 2001.

NASA. NASA Man-Systems Integration Manual (NASA-STD-3000). 1987.

NASA. NASA Reference Publication 1024, The Anthropometry Source Book, Volumes Iand II. 1978.

NEDEL, L.; THALMANN, D. Modeling and deformation of the human body usingan anatomically-based approach. In: Proceedings of Computer Animation. [S.l.]: ACMPress, 1998. p. 34.

NORTON, K.; OLDS, T. Anthropometrica. Sydney, Australia: University of New SouthWales Press, 1996.

NUSSEY, S.; WHITEHEAD, S. Endocrinology - An Integrated Approach. London: BIOSScientific, 2001.

PLANKERS, R.; FUA, P.; D’APUZZO, N. Automated body modeling from videosequences. In: Proceedings of ICCV Workshop on Modeling People. [S.l.: s.n.], 1999.

ROSE M. COHEN, B. B. C. Verbs and adverbs: Multidimensional motion interpolationusing rbf. In: Proceedings of Computer Graphics and Applications. [S.l.: s.n.], 1998. p.32–40.

SCHEEPERS, F. et al. Anatomy-based modeling of the human musculature. In:Proceedings of Computer Graphics and Interactive Techniques. [S.l.: s.n.], 1997. p.163–172.

SEO, H.; MAGNENAT-THALMAN, N. An automatic modelling of human bodies fromsizing parameters. In: Proceedings of ACM SIGGRAPH/Eurographics Symposium onComputer Animation. [S.l.]: ACM Press, 2003.

SHELDON, W. H. The Varieties of Human Physique. New York: Harper and Brothers,1940.

WALTER, M.; FOURNIER, A.; MENEVAUX, D. Integrating shape and pattern inmammalian models. In: Proceedings of ACM SIGGRAPH 2001. [S.l.]: ACM Press, 2001.(Computer Graphics Proceedings, Annual Conference Series), p. 317–326.

WILHELMS, J.; GELDER, A. V. Anatomically based modeling. Computer Graphicsand Interactive Techniques, v. 31, n. Annual Conference Series, p. 173–180, 1997.