Você está na página 1de 103

UNIVERSIDADE DO PLANALTO CATARINENSE

DEPARTAMENTO DE CIÊNCIAS EXATAS E TECNOLÓGICAS


CURSO DE SISTEMAS DE INFORMAÇÃO
(BACHARELADO)

CAROLINE PEREIRA

MODELAGEM E ANIMAÇÃO DE PERSONAGENS HUMANÓIDES 3D

LAGES (SC)
2008
CAROLINE PEREIRA

MODELAGEM E ANIMAÇÃO DE PERSONAGENS HUMANÓIDES 3D

Trabalho de Conclusão de Curso


submetido à Universidade do Planalto
Catarinense para obtenção dos créditos
de disciplina com nome equivalente no
curso de Sistemas de Informação -
Bacharelado.

Orientação: Prof(ª). Sabrina Bet Koerich,


M.Sc.

LAGES (SC)
2008
MODELAGEM E ANIMAÇÃO DE PERSONAGENS HUMANÓIDES 3D
CAROLINE PEREIRA

ESTE RELATÓRIO, DO TRABALHO DE CONCLUSÃO DE CURSO, FOI


JULGADO ADEQUADO PARA OBTENÇÃO DOS CRÉDITOS DA
DISCIPLINA DE TRABALHO DE CONCLUSÃO DE CURSO DO VIII
SEMESTRE, OBRIGATÓRIA PARA OBTENÇÃO DO TÍTULO DE:

BACHAREL EM SISTEMAS DE INFORMAÇÃO

Prof. Sabrina Bet, M.Sc.


Orientador

BANCA EXAMINADORA:

Prof. Ângelo Augusto Frozza, M.Sc. Prof. Viviane Duarte Bonfim, M.Sc.
UNIPLAC UNIPLAC

Prof. Wilson Castello Branco Neto, Dr. Prof. Ângelo Augusto Frozza, M.Sc.
Professor de TCC Coordenador de Curso

Lages, 01 de Dezembro de 2008.


Dedico este trabalho, especialmente a
minha mãe e minha família, que sempre
me insentivaram, e me deram, força e
vontade para tentar lhes oferecer o melhor
de mim.
Agradeço a todos os meus amigos, que me
apoiaram, e me ajudaram no
desenvolvimento deste trabalho. Que
tiveram paciência com os meus momentos
de ausência, e com os meus surtos de
nervosismo. Obrigada a todos, em especial
a Mariana, Vanessa, Rita e Helô.
.
[…]As idéias muito simples, são dificeis
de aceitar[…]
LISTA DE ILUSTRAÇÕES

FIGURA 1 - Visão tridimensional. ..............................................................................8


FIGURA 2 - Visão Edge Loop ...................................................................................14
FIGURA 3 - Base Mesh .............................................................................................15
FIGURA 4 - Tela Exemplo do Software MakeHuman ..............................................16
FIGURA 5 - Seqüência 1 e 2 da troca de quadro .......................................................19
FIGURA 6 - Seqüência 3 e 4 da troca de quadro .......................................................19
FIGURA 7 - Seqüência final da troca de quadro .......................................................19
FIGURA 8 - Fotograma de Eadwerd Muybridge ......................................................20
FIGURA 9 - Técnica High Poly vs. Low Poly ..........................................................23
FIGURA 10 - Modelagem da boca ............................................................................24
FIGURA 11 - Vértices que constituem a boca...........................................................24
FIGURA 12 - Dando forma a boca ............................................................................25
FIGURA 13 - Aumentando a boca e dando forma ao rosto .......................................25
FIGURA 14 - Eliminando as bordas dos vértices ......................................................26
FIGURA 15 - Adicionando uma Sphere (a) e localizando o olho no local criado ....27
FIGURA 16 - Menu Snap ..........................................................................................28
FIGURA 17 - Os dois olhos colocados ......................................................................28
FIGURA 18 - Botões Layers......................................................................................28
FIGURA 19 - Adicionando o olhos na camada 2. .....................................................29
FIGURA 20 - Preenchimento das lacunas entre os olhos e o rosto ...........................29
FIGURA 21 - Criação da pálpebra .............................................................................30
FIGURA 22 - Criação da Cabeça ...............................................................................30
FIGURA 23 - Criando a parta traseira da cabeça ......................................................31
FIGURA 24 - Preenchimento dos buracos entre os vértices .....................................31
FIGURA 25 - Alongando os vértices dos lábios ........................................................32
FIGURA 26 - Visão wireframe dos vértices dos Lábios ...........................................32
FIGURA 27 - Dando mais volume aos Lábios ..........................................................33
FIGURA 28 - Lábio superior sendo deslocado para baixo ........................................33
FIGURA 29 - Rosto moldado ....................................................................................34
FIGURA 30 - Alongando o pescoço ..........................................................................34
FIGURA 31 - Alongando os Vértices para criar peito e as costas .............................35
FIGURA 32 - Etapas de criação do local para encaixar os braços ............................35
FIGURA 33 - Etapas da construção dos Braços ........................................................36
FIGURA 34 - Criando a mão .....................................................................................36
FIGURA 35 - Finalização da mão e criação do polegar ............................................37
FIGURA 36 - Modelo com os braços ........................................................................37
FIGURA 37 - Expandindo os vértices do tronco. ......................................................38
FIGURA 38 - Aumento dos vértices do tronco .........................................................38
FIGURA 39 - Fechamento dos troncos ......................................................................39
FIGURA 40 - Criando as pernas ................................................................................39
FIGURA 41 - Moldando as pernas ............................................................................40
FIGURA 42 - Aumento dos vértices do tornozelo para criação dos pés ...................40
FIGURA 43 - Criação da parte de cima dos pés e da sola dos pés. ...........................41
FIGURA 44 - Fechamento das laterais dos pés .........................................................41
FIGURA 45 - Fechando da parte traseira dos pés......................................................42
FIGURA 46 - Preenchimento do calcanhar ...............................................................42
FIGURA 47 - Modelo final ........................................................................................43
FIGURA 48 - Selecionando Mirror ...........................................................................44
FIGURA 49 - Linha central do modelo .....................................................................44
FIGURA 50 - Painel sobre a Armature ......................................................................45
FIGURA 51 - Alinhando o osso .................................................................................46
FIGURA 52 - Formando a coluna ..............................................................................46
FIGURA 53 - Etapas da criação dos osso do braço do braço ....................................47
FIGURA 54 - Apresentação dos ossos nomeados .....................................................47
FIGURA 55 - Osso que une as pernas .......................................................................48
FIGURA 56 - Ossos das pernas e pés. .......................................................................48
FIGURA 57 - Óssos das pernas nomeados ................................................................49
FIGURA 58 - Visão da câmera ..................................................................................50
FIGURA 59 - Hemi Lâmpada ....................................................................................51
FIGURA 60 - Lâmpada Hemi posicionada ................................................................51
FIGURA 61 - Modelo renderizado ............................................................................52
FIGURA 62 - Painel de Iluminação e suas configurações .........................................52
FIGURA 63 - Acessando Split Área ..........................................................................54
FIGURA 64 - Acessando Action Editor.....................................................................55
FIGURA 65 - Trabalhando a animação do braço ......................................................55
FIGURA 66 - Inserindo um LocRot ...........................................................................56
FIGURA 67 - Canais ..................................................................................................56
FIGURA 68 - Novas chaves ......................................................................................57
FIGURA 69 - Movendo Spine1 e dobrando as pernas ...............................................57
FIGURA 70 - Movendo legl ......................................................................................58
FIGURA 71 - Braços e Pernas sendo animados. .......................................................58
FIGURA 72 - Painel Shapes ......................................................................................60
FIGURA 73 - Exemplos de animação da face do personagem..................................60
FIGURA 74 - Subdivisão do Grafo de cena ..............................................................62
FIGURA 75 - Jogo FPS e uma possível representação para o seu grafo de cena ......63
FIGURA 76 - Tela do Java 3D com o personagem modelado ..................................68
FIGURA 77 - Modelo dentro do Ambiente de programação Utilizando Blitz3D .....69
FIGURA 78 - Modelo dentro de um ambiente virtual. ..............................................70
QUADRO 1 - Código Fonte inserção do modelo ......................................................67
LISTA DE SIGLAS

3D Três Dimensões
RGBA Red-Green-Blue-Alpha
NUM Numérico
FPS First Person Shooter
TCC Trabalho de Conclusão do Curso
URL Uniform Resource Locator
UNIPLAC Universidade do Planalto Catarinense
RESUMO

Cada vez mais os jogos estão inseridos na vida das pessoas, em várias faixas de idade
em todo o mundo. A modelagem 3D, vem ganhando cada vez mais força, devido o
crescimento desta indústria de entretenimento. Com base nisto, foi realizado um
estudo detalhado sobre quais técnicas são utilizadas para a criação de modelos
humanóides 3D. As técnicas utilizadas para a criação destes modelos levam em
consideração fatores que resultam em modelos com algumas características como:
bom desempenho, mobilidade e interação, tanto para animações quanto para
desenvolvimento de jogos. Este estudo também apresentou como pode ser feito o
emprego destas técnicas dentro do software Blender , que é utilizado para a criação de
modelos, levando em consideração fatores como iluminação, câmeras e renderização.
Algumas técnicas para modelagem são descritas, entre elas o Edge-loop, que trabalha
diretamente com vértices, gerando modelos com baixo número de polígonos, a Base
Mesh, que utiliza figuras para criar a base do modelo e também softwares que podem
ser utilizados para a criação da Base, como o Make Human. O Software Blender é um
software livre que possui algumas características como oferecer funcionalidade para
modelagem, renderização, animação e pós-produção, que são detalhadas neste
trabalho.Características que tornam o modelo utilizável para ambientes de
programação também foram tratadas. O Modelo do conteúdo deste trabalho também
contou com a Armature, estrutura que torna possível que o modelo realize
movimentos, tanto em animações quanto em futuras inclusões dentro de ambientes de
programação. Essas inclusão também foram comentadas, utilizando como ambiente de
programação o Java 3D.

Palavras-chave: Blender, Modelagem 3D, Java 3D, Base Mesh, Edge Loop
ABSTRACT

Each time more the games are inserted in the life of the people, in some bands of age
in the whole world. The modeling 3D, comes gaining each time more which had force,
the growth of this industry of entertainment. On the basis of this, was carried through
a study detailed on which techniques is used for the creation of models humanóides
3D. The techniques used for the creation of these models take in consideration factors
that result in models with some characteristics as: good performance, mobility and
interaction, as much for animações how much for development of games. This study
also it presented as the job of these can inside be made techniques of the Blender
software, that is used for the creation of models, leading in consideration factors as
illumination, cameras and renderização. Some techniques for modeling are described,
between them the Edge-Loop, that works directly with vertices, generating models with
low number of polygons, the Mesh Base, that uses figures to also create the base of the
model and softwares that they can be used for the creation of the Base, as the Make
Human. Blender Software is a free software that possesss some characteristics as to
offer functionality for modeling, renderização, animation and after-production, that
are detailed in this work. Characteristics that also become the usable model for
programming environments had been treated. The Model of the content of this work
also counted on the Armature, structure that becomes possible that the model carries
through movements, as much in animações how much in future programming
environment inclusions inside. This inclusion had been also commented, using as
surrounding of programming the Java 3D.

Keywords: Blender, Modeling 3D, Java 3D, Base Mesh, Edge Loop
SUMÁRIO

RESUMO ....................................................................................................................... X
ABSTRACT .................................................................................................................11
1 INTRODUÇÃO ..........................................................................................................1
1.1 Apresentação .............................................................................................................1
1.2 Descrição do problema ..............................................................................................2
1.3 Justificativa ................................................................................................................2
1.4 Objetivo geral ............................................................................................................3
1.5 Objetivos específicos .................................................................................................4
1.6 Metodologia ...............................................................................................................4
2 TÉCNICAS DE MODELAGEM DE PERSONAGENS HUMANÓIDES............6
2.1 Modelagem 3D ..........................................................................................................6
2.2 Conceitos de modelagem 3D .....................................................................................8
2.2.1 Perspectiva sob a visão humana ....................................................................................... 8
2.2.2 Cor ................................................................................................................................... 10
2.2.3 Iluminação ....................................................................................................................... 10
2.2.4 Radiosidade e Ray-tracing .............................................................................................. 11
2.2.5 Câmeras ........................................................................................................................... 12
2.3 Modelagens de personagens ....................................................................................13
2.3.1 Técnica Edge-loop ........................................................................................................... 13
2.3.2 Base Mesh ........................................................................................................................ 14
2.3.3 Softwares Make Human ................................................................................................... 15
2.4 Animação 3D ...........................................................................................................16
2.4.1 Framerates ...................................................................................................................... 17
2.4.2 Quadros-chave ................................................................................................................ 17
2.4.3 Tipos de interpolação ...................................................................................................... 18
2.5 A teoria do movimento ............................................................................................18
2.5.1 Movimento humano e animal .......................................................................................... 19
2.6 Conclusões ...............................................................................................................21
3 PROCESSO DE MODELAGEM DE PERSONAGENS 3D ................................22
3.1 Requisitos dos personagens .....................................................................................22
3.2 Modelagem do personagem .....................................................................................23
3.2.1 Forma inicial da boca e da face ...................................................................................... 24
3.2.2 Criando os olhos.............................................................................................................. 25
3.2.3 Moldando a cabeça ......................................................................................................... 30
3.2.4 Criando a boca ................................................................................................................ 31
3.2.5 Criando o pescoço e os ombros....................................................................................... 34
3.2.6 Criando o tronco e as pernas .......................................................................................... 37
3.3 Criação do esqueleto................................................................................................43
3.3.1 Colocando a armadura nos braços ................................................................................. 46
3.4 Iluminação e renderização .......................................................................................49
3.4.1 Adicionar uma câmera .................................................................................................... 50
3.4.2 Iluminação ....................................................................................................................... 50
3.4.3 Renderização ................................................................................................................... 52
3.5 Conclusão ................................................................................................................53
4 ANIMAÇÃO DOS PERSONAGENS .....................................................................54
4.1 Animando o personagem .........................................................................................54
4.1.1 Animando a face .............................................................................................................. 59
4.2 Inserindo o personagem dentro do ambiente de programação Java 3D ..................60
4.2.1 Java 3D ............................................................................................................................ 61
4.2.2 Grafo de cena do Java 3D ............................................................................................... 62
4.2.3 Interfaces e classes base do pacote Loader .................................................................... 63
4.2.4 Carregar objetos 3D utilizando loaders.......................................................................... 66
4.2.5 Carregando Arquivo.obj.................................................................................................. 66
4.2.6 Inserindo o Modelo dentro do Cenário ........................................................................... 67
4.3 Inserção do modelo dentro de C++ com Plungin Blitz3D ......................................68
4.4 Modelo dentro de um ambiente 3D .........................................................................70
4.5 Conclusões ...............................................................................................................71
5 CONSIDERAÇÕES FINAIS ...................................................................................72
RERÊNCIAS BIBLIOGRÁFICAS ...........................................................................74
APÊNDICES ................................................................................................................76
1 INTRODUÇÃO

1.1 Apresentação

Anualmente, o mercado mundial de jogos movimenta cerca de 30 bilhões de


dólares e a capacidade brasileira nesta área não está sendo aproveitada por completo.
Com maiores investimentos e incentivos, esta área se tornará cada vez mais
promissora e lucrativa (SBC, 2007).
Os jogos vêm se popularizando em escala mundial e os jogadores sempre
estão buscando jogos que lhes transmitam a sensação de estarem mais inseridos na
realidade. Com as técnicas de modelagem 3D isso se torna possível. Ambientes cada
vez mais reais, personagens com movimentos, expressões faciais e texturas cada vez
mais apurados realmente transportam o jogador para um universo virtual, e é isso que
torna os jogos cada vez mais populares e com legiões de jogadores.
Porém, a viabilidade do uso de personagens humanóides nos jogos 3D, de
forma a garantir um bom desempenho, necessita de técnicas especiais de modelagem
3D, sendo o foco principal deste trabalho a identificação de técnicas tanto para a
modelagem quanto para animação dos personagens, oferecendo maior semelhança
possível com modelos reais.
O presente estudo inicia com um capítulo introdutório, abordando a
problemática em questão, objetivos, justificativa, bem como a metodologia
empregada. Os aspectos conceituais são tratados nos capítulos seguintes. Sendo que o
capítulo 2 apresenta um levantamento a cerca das técnicas de modelagem de
personagens humanóides encontradas nas pesquisas bibliográficas, bem como as
formas de utilizá-las. No capítulo 3 descreve-se o processo de modelagem de
2

personagens 3D, já no capítulo 4 apresenta-se a descrição detalhada do


desenvolvimento de animação dos personagens modelados. As considerações finais
são apresentadas no capítulo 5, incluindo as experiências adquiridas, bem como
sugestões de trabalhos futuros.

1.2 Descrição do problema

É conhecido o grande crescimento da indústria de entretenimento e, com


isto, a popularização dos jogos, não apenas internacionalmente, mas nacionalmente.
Desta forma, percebe-se a necessidade de inserção e maior foco nesta área promissora.
Com igual taxa de crescimento, a qualidade dos jogos deve acompanhar as
expectativas dos usuários, incluindo neste contexto a modelagem 3D, com
movimentos mais reais possíveis.
Desta forma, o presente trabalho envolve como problemática a modelagem
de personagens humanóides em 3D, que transmitam ao jogador uma maior sensação
de estar inserido na realidade.

1.3 Justificativa

A importância dos jogos para a cultura brasileira e mundial está na mutação


que ocasionam, e ocasionarão cada vez mais, nas artes audiovisuais (e possivelmente,
em outras artes) e na educação. Pode-se afirmar que os jogos representam um passo
além do cinema e da televisão, considerando a sua interatividade. E no que se refere à
economia, basta dizer que, em escala mundial, já superou o cinema (SBC, 2007).
No Brasil, que começa a despertar um pouco tardiamente para a importância
dos jogos eletrônicos, os resultados remetem o caráter promissor da atividade: nos
últimos três anos, o crescimento do setor foi de 20% ao ano. Ou seja, uma área em
movimento ascendente, que pode faturar pelo menos 50% mais se forem destinados
investimento inteligentes do estado e do capital privado (SBC, 2007).
Os jogos 3D em especial, remetem a uma visão diferenciada dos jogos, pois
3

agregam valor de imagens e movimentos que permitem ao jogador uma maior


sensação de inserção na realidade do tema, principalmente comparando-se aos jogos
2D. E jogos com esta qualidade de imagem e realidade expressa pela modelagem 3D
são justamente o que o jogador busca em um jogo, para julgá-lo de qualidade (SBC,
2007).
Um exemplo de grande sucesso é o Second Life, que destaca-se por ser um
ambiente virtual e tridimensional, que simula alguns aspectos da vida real e social do
ser humano. Dependendo do tipo de uso, pode ser encarado como um jogo, um mero
simulador, um comércio virtual ou uma rede social. O nome Second Life, que significa
Segunda Vida, pode ser interpretado como uma vida paralela (LIFE, 2007).
Esse ambiente virtual tem recebido ultimamente muita atenção da mídia
internacional, principalmente as especializadas em informática, pois o número de
usuários cadastrados e também os ativos têm crescido significativamente, e ainda
cresce em forma exponencial. Segundo estatísticas do próprio site oficial (LIFE,
2007), em 24 de maio de 2007 o sistema contava com 6.657.169 usuários e o sistema
computou a movimentação de U$ 1.428.250 nas últimas 24 horas. O sistema também
aponta que nos últimos 60 dias 1.737.273 pessoas se conectaram no sistema.
Empresas e pessoas conseguem obter lucro modelando artefatos para o
Second Life, tais como roupas, acessórios, projetos residenciais e comerciais, entre
outros. Existe ainda, a necessidade de modelagem de personagens para este ambiente,
pois cada pessoa deve ser identificada por um avatar (personagem virtual)
(WIKIPEDIA, 2008).
Sendo que este trabalho vem de encontro com as várias necessidades do
mercado, desde a necessidade de personagens humanóides 3D, quando a popularização
do jogos nesta categoria.

1.4 Objetivo geral

Este trabalho tem como objetivo a modelagem de personagens humanóides para


jogos, utilizando técnicas de modelagem 3D.
4

1.5 Objetivos específicos

a) Apresentar as principais técnicas para modelagem de personagens


humanóides em 3D;
b) Criar modelos de personagens 3D para demonstrar o processo de
modelagem;
c) Realizar a animação dos personagens desenvolvidos.

1.6 Metodologia

O presente estudo iniciou com o desenvolvimento do projeto do trabalho no


primeiro capítulo, abordando a problemática em questão, objetivos, justificativa,
cronograma e a metodologia empregada, levantamento bibliográfico de técnicas de
modelagem 3D, busca sobre técnicas de animação e produção de humanóides com
animação 3D. O levantamento bibliográfico foi realizado durante todo o
desenvolvimento do trabalho tendo como fonte de pesquisas livros, artigos publicados
em eventos e periódicos, além de materiais coletados na Internet.

Os aspectos conceituais foram abordados no capítulo dois, sendo realizada


então a redação do mesmo, contendo um levantamento de técnicas de modelagem de
personagens humanóides encontradas nas pesquisas bibliográficas.

Ainda nesta etapa de levantamento bibliográfico houve a necessidade de se


encontrar uma ferramenta para auxiliar na modelagem 3D, então se baseando no
estudo de Kobashikawa (2007) optou-se pela ferramenta Blender, o qual é uma
ferramenta gráfica que permite a criação de conteúdo 3D e oferece funcionalidade para
modelagem, renderização, animação e pós-produção. Através de recursos como o
Game Engine, o Blender gerencia conteúdos interativos 3D com execução remota,
entre outros recursos, e ainda é uma ferramenta gratuita e de fácil acesso.

Posteriormente, se iniciou a etapa de modelagem dos personagens fazendo uso


de algumas das técnicas identificadas na fase de levantamento bibliográfico.
5

Com os personagens já devidamente modelados, iniciou-se etapa de animação


dos mesmos, utilizando técnicas que lhes oferecessem maior realidade possível,
incluindo então vários tipos de movimento, caminhada, expressões faciais, etc.
Por fim, as considerações finais foram redigidas no capítulo cinco.
2 TÉCNICAS DE MODELAGEM DE PERSONAGENS HUMANÓIDES

Neste capítulo será tratado basicamente sobre computação gráfica, seu


histórico, onde começou, quais as tendências para o crescimento, e mais
especificamente sobre a parte da mesma, que trata sobre os modelos tridimensionais,
das várias técnicas para a produção de modelos 3D, técnicas como Edge Loop e a de
utilização da Base Mesh, juntamente com sua aplicação, se verá a importância de
fatores como as cores, iluminação, textura e câmeras para que se obtenha um modelo
3D de qualidade e com o maior realismo possível. Será tratado também dos softwares
utilizados (Blender e Make Humam) para desenvolvê-los e como se pode utilizá-los
pra construção dos modelos. Relatar-se-á sobre as técnicas utilizadas para a animação.

2.1 Modelagem 3D

A modelagem tridimensional ou modelagem 3D é uma subárea da


computação gráfica que tem como objetivo a criação de objetos em três dimensões.
Vive-se uma Era de forte ascensão dos jogos, e a modelagem tridimensional
tem um forte papel dentro deste contexto, pois é através dela que os jogos ganham em
qualidade e realismo. Jogos que realmente inserem o jogador dentro do contexto do
tema geralmente envolvem técnicas de modelagem tridimensional para chegar a tais
grais de realismo.
Pode-se dizer que o marco inicial da computação gráfica aconteceu em 1968,
na Universidade de Utah, através do professor David Evans e o Dr. Ivan Sutherland.
Numa época onde os (poucos) computadores eram dedicados principalmente ao
cálculo militar e financeiro, eles enxergavam além: para os dois, os computadores
7

deveriam interagir com o usuário, executando tarefas das mais variadas. Em 1968, a
única interação com o usuário eram os cartões perfurados, o que dificultava a
variedade de utilidades da máquina. Foi daí que nasceu a idéia de utilizar gráficos e
desenhos para facilitar o trabalho. Assim nasceu a Evans & Sutherland, uma empresa
pioneira no ramo da computação gráfica. Sua principal atividade era a criação de
aplicações gráficas para simulação. Nela nasceram os primeiros conceitos de desenho
vetorial, representação tridimensional em ambiente bidimensional, mapeamento de
texturas, entre outros avanços (STRACCIA, 2002).
Com a evolução do hardware e, principalmente, do software, viu-se coisas
inacreditáveis no cinema. Quem diria que, em 1991, se veria um ser de metal líquido
se transformar numa pessoa (Exterminador do Futuro 2). Em 1993 os dinossauros
voltaram à vida através do computador, em Jurassic Park. Em 1995 o primeiro filme
criado no computador, Toy Story (STRACCIA, 2002).
Nos dias de hoje, vive-se várias revoluções ao mesmo tempo. Uma delas é a
democratização das ferramentas de animação e computação gráfica. Praticamente
todos os softwares de animação acabaram sendo migrados para a plataforma Windows.
Há alguns anos, para se ter um equipamento capaz de rodar esses softwares, era
necessário uma plataforma Silicon Graphics (sob o custo de pelo menos US$
10.000,00), e um programa de animação que custava a metade, ou até mais que o valor
do hardware (STRACCIA, 2002).
Muitas produtoras de animação se aproveitaram dos baixos custos atuais pra
entrar no mercado e mostrar o seu valor. Outros fatos importantes que estão
revolucionando o mundo da computação gráfica:
 O cinema digital, que está reduzindo os custos e facilitando a
manipulação das imagens e cenas no computador;
 As novas ferramentas de animação, que estão eliminando as tarefas
repetitivas e dando mais tempo aos artistas para aprimorarem as técnicas
mais complexas;
 Hardwares cada vez mais poderosos, que estão diminuindo o tempo de
render e de pré-visualização.
8

2.2 Conceitos de modelagem 3D

Nesta sessão serão abordados alguns conceitos básicos e importantes para a


concepção da modelagem 3D, dentre eles uma perspectiva sob a visão humana, teoria
das cores, iluminação, radiosidade e ray-trancing, e por fim comportamento das
câmeras em modelos 3D.

2.2.1 Perspectiva sob a visão humana

A mente humana é capaz de realizar as maiores proezas que se possa


imaginar. Ela pode, por exemplo, mudar completamente a forma como se entende e
interpreta as coisas ao redor. A figura 1 apresenta a visão das três dimensões.

FIGURA 1 - Visão tridimensional.


FONTE: ALVES, 2006

Tomando-se como base a Figura 1, a imagem chega aos olhos do observador


representado por linhas retas e curvas, sobre um plano bidimensional, como um papel,
por exemplo. O Cérebro agrupa todas as linhas e reorganiza a imagem, transportando-a
para um plano espacial de três dimensões (largura, altura e profundidade), o resultado
é a sensação de que as linhas que formam as paredes e o piso são paralelas e não
convergentes para um único ponto. Isso da à impressão de que tanto o piso quanto a
parede estão distanciando-se e prolongando-se até o fundo, e não de que elas constam
9

apenas de uma combinação de linhas inclinadas que se encontram em um certo ponto


da tela do computador ou do papel, no caso de ser uma ilustração desenhada em uma
folha.
Com isso pode-se chegar à conclusão de que o cérebro só entende o mundo
tridimensional. Somente na renascença os artistas começaram a compreender melhor o
conceito de perspectiva, utilizando convergência de linhas e ponto de fuga. Na teoria
da perspectiva tradicional são encontrados os seguintes componentes:
 Um Observador;
 Um ponto fixo, representado pelo olho do observador;
 Um Assunto, ou seja, um objeto para o qual o olho do observador está
voltado;
 Um plano do solo, que é o local onde se encontra o observador;
 Um horizonte que é uma linha paralela ao plano de solo;
 Um centro de visão, que o ponto para o qual está direcionado o olho do
observador, e pode ser entendida também como uma linha imaginária
que sai do olho do observador em direção ao assunto;
 Um campo de visão ou a área abrangida pelo olho do observador, que
engloba o assunto e o ambiente ao seu redor;
 E um ponto de fuga que representa uma região para a qual convergem
todas as linhas paralelas ao plano do solo.

Nos modelos 3D a perspectiva é também um fator importante e pode ser


classificada como perspectiva de um ponto, perspectiva de dois pontos e perspectiva
de três pontos. Para entender melhor o assunto, pode-se imaginar um dado que, por ter
a forma cúbica, fornece um bom exemplo para estudo da perspectiva de objetos.
Ao se olhar perpendicularmente para um dos lados de um cubo, pode-se ver
apenas uma face. Então tem-se a perspectiva de um ponto. Se, no entanto, visualizar o
cubo por meio de um dos vértices, de modo que possa ver dois vértices ao mesmo
tempo, tem uma perspectiva de dois pontos, visto que há um ponto de fuga para cada
lado.
10

Porém se este dado estiver colocado em cima de uma mesa e for observado num
ângulo de aproximadamente 45 graus em relação à própria mesa, será possível ver até
três faces ao mesmo tempo, a de cima e duas laterais. Desta forma, existem três pontos
de fuga, ou uma perspectiva de três pontos.

2.2.2 Cor

As cores são, muito importantes para uma melhor compreensão do mundo.


Elas afetam diretamente o modo de ver e de entender as coisas. Na verdade, a cor não
é como muitos pensam emitida pelos objetos que se vê. Ela é o reflexo da luz que se
encontra no espectro da cor que se está vendo (AZEVEDO; CONCI, 2003).
Os modelos possuem normalmente dois modos diferentes para tratar cor: o
modo RGBA (Red-Green-Blue-Alpha) e o modo indexado de cor (NEIDER, 1993
apud BICHO et al, 20021). A definição do modo de cor dependera da biblioteca que
está sendo utilizada para interfacear com o sistema de janelas.
O modo RGBA, mais comumente usado, possui as componentes vermelho,
verde, azul e alfa, respectivamente. Os três primeiros representam as cores primárias e
são lineares (variando de 0.0 a 1.0), sendo muito úteis para renderizar cenas realísticas.
A componente alfa é utilizada, por exemplo, em operações de blending
(mistura) e transparência. Esta componente representa a opacidade da cor, variando de
0.0, onde a cor é totalmente transparente, até 1.0, onde a cor é totalmente opaca. Desta
forma, o valor alfa não é visível na tela, sendo usado apenas para determinar como o
pixel será exibido (BICHO et al, 2002).

2.2.3 Iluminação

Um dos fatores importantes para obter imagens com alto grau de realismo é a
utilização correta de iluminação do ambiente dos objetos. A mudança na intensidade
de luz refletida ao longo de uma superfície de um objeto fornece informações sobre a
forma e a curvatura da superfície desse objeto. Se não for gerada uma variação na cor

1
NEIDER, J.; DAVIS, T.; MASON, W. OpenGL Programming Guide (AddisonWesley, 1993).
11

dos pontos da superfície, a identificação do objeto pode ser tornar difícil (AZEVEDO;
CONCI, 2003).
É através da iluminação que obtém aquele reflexo perfeito em metais e vidros,
sombras bastante convincentes e uma coloração natural dos objetos.
Como exemplo, seguem cinco tipos de iluminação utilizados pela ferramenta de
modelagem 3D Blender e, também, o Java 3D, as quais serão utilizadas para o
desenvolvimento deste trabalho. Esses tipos também comuns na maioria das
ferramentas de modelagem 3D disponível no mercado:
 Lamp: Simula a iluminação obtida com uma lâmpada, ou seja, a luz se
propaga em todas as direções;
 Spot: O efeito obtido com esse tipo de iluminação é similar ao daqueles
canhões de luz, que direcionam o faixo para um determinado ponto. Ele
projeta um cone de luz indicando o alvo a ser iluminado;
 Área: Esse tipo de luz tem um componente similar ao tipo spot, com a
diferença de que não é gerado o cone de luz. Pode-se compará-lo a um
refletor que ilumina indiretamente uma determinada parte da cena;
 Sun: Resulta em uma iluminação na qual a luz possui uma intensidade
constante e é distribuída em todas as direções. É como se a cena
estivesse sendo iluminada pela luz solar;
 Hemi: Esse tipo é muito peculiar, pois simula uma iluminação obtida
através de um refletor de formato hemisférico, como uma abóboda. Em
outros softwares de modelagem ele pode ser encontrado com o nome de
luz omni sua característica principal é não projetar sombras.

2.2.4 Radiosidade e Ray-tracing

Quando um objeto é atingido por uma luz, parte dela é absorvida e parte é
refletida. Se o objeto se encontra no caminho dessa luz refletida ela o atinge também e
depois é novamente refletida. O processo se reflete até que não haja mais objeto a ser
iluminado pelo raio de luz dentro da cena. Esse fato é conhecido como radiosidade e se
encontra disponível nos softwares que efetuam a renderização, utilizando a técnica do
12

Ray-tracing (ALVES, 2006).


Esse é um fenômeno comum no mundo real, portanto deve ser considerado e
muito bem planejado, para se obter imagens altamente realistas, deve se destacar, no
entanto, que para animações o processo demanda um tempo muito grande devido aos
cálculos envolvidos. Sendo assim, talvez seja mais indicado para o uso em imagens
estáticas (ALVES, 2006).
Para que esta técnica se torne possível é utilizado um método de
renderização em que a cena é projetada no sentido do observador para o ambiente
tridimensional. O processo em si é bastante complexo porque simula a forma como a
luz interage com todos os objetos presentes na cena. Devido a esta interação, podem-se
obter efeitos de refração e reflexão mútua entre a superfície e o objeto, ou mesmo entre
os próprios objetos (ALVES, 2006).

2.2.5 Câmeras

O uso de câmeras é muito importante, seja para gerar imagens estáticas, seja
para animar uma cena. Deve-se ter um cuidado extra ao escolher a posição que a
câmera deve ocupar para não correr o risco da cena ser truncada em alguma parte
(ALVES, 2006).
Além do posicionamento correto da câmera é imprescindível uma escolha de
tipo (ou tamanho) de lente que seja adequado ao resultado que se espera obter. O tipo
de lente padrão do Blender é de 35mn, mais é possível configurar esse valor entre 1mn
e 250mn (ALVES, 2006).
Configurações de lentes menores que 50mn são comumente denominadas
lentes de ângulo aberto, devido ao fato do campo de visão captada ser maior que o
campo de visão do olho humano. Nesse caso, os efeitos de perspectivas são gerados,
podendo até mesmo haver distorção das imagens. Por outro lado, lentes maiores que
50mn aproximam a cena mais do que você conseguiria com seus olhos. Elas são
chamadas de lentes telefoto. A principal característica dessas lentes é que tentam
aplanar a perspectiva dos objetos (ALVES, 2006).
13

2.3 Modelagens de personagens

Possivelmente o processo mais complexo e mais gratificante de modelagem


em 3D com certeza é a modelagem de um personagem. Construí-lo do começo ao fim,
do rascunho à animação, é um dos pontos máximos de qualquer modelador 3D.
(TABAJARA, 2006).
Infelizmente, não basta apenas saber desenhar e modelar um personagem
bonito e cheio de detalhes, para que esse trabalho seja reconhecido e tenha chances de
mercado. É preciso que sua modelagem, além de ser atrativa, seja funcional. Para que
isso ocorra existem várias técnicas, dentre elas: Edge-loop, Base-Mesh. O uso de
softwares de modelagem de personagens já é bastante comum.

2.3.1 Técnica Edge-loop

O Edge-loop é uma técnica de manipulação de malhas de um modelo 3D,


também conhecida como, técnica de confecção de Personagens Profissionais. Sem o
Edge-loops, um personagem serve apenas como estátua, pois qualquer movimento que
ele realize, a malha (vertex e edges) irá se entrelaçar, gerando uma tensão que
deformará a estrutura do personagem trazendo má qualidade ao trabalho
(TABAJARA, 2006).
Confeccionar Edge-loops duplica ou triplica o tempo de modelagem de um
personagem.
Esta é uma técnica que evoluiu junto com a capacidade dos computadores.
As primeiras modelagens 3D, por serem feitas em computadores de baixo
processamento, tinham uma baixa quantidade de polígonos, deixando sua aparência
pouco real e com triangulações muito aparentes. Sendo assim, suas movimentações
eram robóticas por natureza e a famosa técnica Edge-Loop nem havia sido formulada.
Quanto mais os computadores foram evoluindo, maior era o número de
polígonos que um modelo poderia ter e maior seria seu realismo. Então começaram a
surgir os primeiros problemas. A pergunta que se fazia era: Como fazer um rosto 3D
se movimentar como o rosto de uma pessoa real, sem que ele fique com os triângulos
14

poligonais aparentes?
A resposta para isso foi simples: se o movimento do rosto é feito através de
músculos, o 3D teria que se movimentar da mesma forma. Um exemplo de base Edge-
loop na Figura 2.

FIGURA 2 - Visão Edge Loop


FONTE: TABAJARA, 2006

Cada expressão de um rosto real é realizada pelas combinações dos músculos


da face. Alguns músculos têm maior influência nas expressões, outros menores. Então,
a primeira confecção de um rosto 3D de movimentação perfeita levou em consideração
que todos os polígonos de um rosto 3D devem acompanhar as linhas de fibras
musculares de um rosto real.

2.3.2 Base Mesh

Essa técnica consiste em através da Base Mesh importar uma imagem para
servir de base para a construção do modelo 3D desejado (ALVES, 2006). A Figura 3
apresenta um exemplo da técnica.
Esta é uma das técnicas mais utilizada, porém deve-se tomar cuidado, pois o
uso somente dela ao invés de gerar um modelo que tenha a possibilidade de
dinamismo, pode gerar uma estátua, sem possibilidade de se movimentar. Por isso,
combinada com esta técnica utiliza-se também a técnica Edge-loops, citada
anteriormente (TABAJARA, 2006).
15

FIGURA 3 - Base Mesh


FONTE: TABAJARA, 2006

Existem alguns sites onde se podem encontrar imagens propriamente para o


uso com essa técnica, dentre eles:
 www.olhares.com
 www.fineart.sk
 www.3d.sk
 www.renderosity.com
 www.human-anatomy-for-artist.com
 http://characterdesigns.com/
 www.conceptart.org

2.3.3 Softwares Make Human

Outra forma para construir modelos 3D é utilizando softwares que


constituem partes específicas do modelo e depois podem ser importado pelo Blender,
ou outro software utilizado para a modelagem 3D.
O software Make Human é um dos softwares que vem auxiliar na construção
de modelos humanóide. Ele pode ser usado como uma espécie de plugin do Blender, e
16

é capaz de gerar um modelo humanóide completo, possibilitando vários ajustes que


podem contribuir e muito para a construção do modelo final. A Figura 4 apresenta a
tela do software.
Ele é um software de fácil manipulação que permite regulagens como, peso,
altura, formatos de boca, nariz, olhos, testa, cabeça, mãos, ombros, massa muscular,
etc.

FIGURA 4 - Tela Exemplo do Software MakeHuman

2.4 Animação 3D

A história da animação digital está diretamente relacionada com a história da


computação gráfica. Desde os primeiros dispositivos disponíveis foram percebidas as
possibilidades de uso para a geração de ilusão de movimento.
Uma imagem é apresentada no monitor do computador e em seguida é
rapidamente substituída por uma nova imagem, semelhante à anterior, mas
ligeiramente modificada. Esta técnica é idêntica ao modo como a ilusão de movimento
é transmitida com a televisão e os filmes.
A animação computacional 3D é, o sucessor digital da animação por stop
motion; a figura animada é modelada no monitor e "vestida" com um esqueleto virtual.
Então os membros, olhos, bocas, roupas, etc., da imagem 3D são movimentadas pelo
17

animador. Finalmente, a animação é renderizada (ALVES, 2006).


Uma animação é basicamente constituída por vários quadros, os quais são
denominados frames. Esses frames são semelhantes a fotografias, que, passadas em
seqüência, dão a ilusão de movimento.
De forma a obter uma melhor compreensão da animação, é importante a
apresentação de conceitos relacionados.

2.4.1 Framerates

Framerate é a velocidade com que os quadros são exibidos na animação. Por


exemplo: definido que o framerate de uma animação é 10, isso quer dizer que, em
cada segundo da animação, 10 quadros são exibidos. Caso essa animação tenha uma
duração de oito segundos, então sua quantidade total é de 80 quadros. Se o destino da
animação for a TV, VHS ou DVD, é muito importante determinar o framerate para
deixar o vídeo em formato-padrão (ALVES, 2006).
Para vídeos que o destino é somente a exibição no computador, não é preciso
se preocupar tanto com o framerate, pois no computador não há nenhum padrão ou
restrição. Todavia, caso o objetivo seja produzir vídeos para outras mídias, é
importante utilizar os padrões, pois eles são incompatíveis.

2.4.2 Quadros-chave

Os quadros-chave são as posições-chave dos objetos em animação. O


Blender cria animações usando um método chamando interpolação. Pode-se
determinar as posições de um objeto no tempo e o Bender criar a interpolação de
movimento entre aquelas posições.
Por exemplo, um cubo que está a esquerda do monitor no quadro 1, pode-se
determinar que nesse ponto e posição tem-se um quadro-chave, enquanto no quadro 20
o cubo está a direita do monitor, sendo este outro quadro-chave. Ao executar essa
animação, o software fará a interpolação entre o quadro 1 e o quadro 20 do cubo,
deslocando-se de um ponto até o outro suavemente.
18

2.4.3 Tipos de interpolação

Existem vários tipos de interpolações, desde as simples, utilizando apenas


quadros-chave, nas quais o objeto segue em linha reta, de um quadro até o outro e as
interpolações entre pontos de curvas. O tipo de interpolação tem uma influência muito
grande no tipo de movimentação do objeto.
Existem três tipos de interpolações entre pontos de curva Ipo que são
(ALVES, 2006):
 Constant: O gráfico dessa interpolação tem apenas linhas horizontais e
verticais, que faram o objeto literalmente pular de um ponto para o outro
na animação;
 Linear: Aqui as linhas retas que ligam os pontos, mas, diferentemente da
interpolação anterior, as linhas podem ficar inclinadas. Assim tem-se
movimentos gradativos e lineares nos objetos;
 Bezier: Esse é o tipo padrão de linha Ipo que são as curvas do tipo
Bezier, que são curvas menos acentuadas.

2.5 A teoria do movimento

Uma das principais preocupações que o animador deve ter, é a simulação de


movimentos. Talvez este seja o ponto mais importante para se obter uma boa
animação, pois de nada adianta ter trabalhado minuciosamente na modelagem dos
objetos e na aplicação cuidadosa de materiais texturas, se for elaborada uma seqüência
de movimentos que não procura retratar o mundo real.
Como exemplo, tem-se o caso de uma bola de basquete que, ao ser
arremessada, bate no aro. Logicamente, para que a animação tome um aspecto realista,
é necessário que o aro aja de acordo com o esperado, ou seja, ele deve envergar ao ser
tocado pela bola e posteriormente ficar vibrando algum tempo. As Figuras 5, 6 e 7
apresentam um esboço da seqüência de troca de quadro da animação dessa cena.
19

FIGURA 5 - Seqüência 1 e 2 da troca de quadro


FONTE: ALVES, 2006

FIGURA 6 - Seqüência 3 e 4 da troca de quadro


FONTE: ALVES, 2006

FIGURA 7 - Seqüência final da troca de quadro


FONTE: ALVES, 2006

2.5.1 Movimento humano e animal

Uma das tarefas mais difíceis de executar é certamente a simulação de


pessoas e animais. Essa dificuldade advém do fato do mais simples ato como, por
exemplo, o levantar de um braço, envolve muitos músculos e articulações no mundo
real. E, para que a animação tenha uma aparência realista, esses detalhes, por menores
que sejam, não devem ser esquecidos.
A importância do estudo do movimento do corpo humano e de animais é
grande. Muitos animadores gastam horas e mais horas analisando vídeos de pessoas e
20

animais caminhando ou executando os mais variados tipos de movimentos, como


salto, corrida, queda etc.
Os cientistas que desenvolvem a robótica também têm se dedicado muito à
compreensão do movimento humano e animal, mais precisamente com a capacidade
das pessoas andarem em duas pernas, pois isso é fundamental para a criação de robôs
que possam se movimentar sozinhos sem a ajuda de acessórios.
Como exemplo, uma pessoa caminhando lentamente, quais os movimentos
básicos que ela executa? Bem, primeiro deve-se lembrar que mesmo a caminhada não
passa de uma queda controlada, em que a pessoa inclina levemente o tronco para
frente e então muda o seu passo, alterando a posição das pernas. Os braços também
desempenham um papel de igual importância, já que eles funcionam como pêndulos
para contrabalançar o movimento das pernas.
Um trabalho que com certeza deve ser tomado como referência para esse
estudo é o do fotografo Eadwerd Muybridge, que realizou, em meados de 1872, a
incrível façanha de fotografar em alta velocidade animais e pessoas andando,
correndo, subindo e descendo escadas etc. Esse trabalho acabou originando o livro
Complete Human and animal motion. As fotos são apresentadas na sequência como se
fossem fotogramas de um filme como se vê na Figura 8.

FIGURA 8 - Fotograma de Eadwerd Muybridge


FONTE: ALVES, 2006
21

2.6 Conclusões

Com as pesquisas realizadas para a produção deste capítulo, foi possível o


contato com conceitos essenciais para a produção e animação de modelos 3D. Foi
possível também a identificação de técnicas e ferramentas que venham auxiliar no
desenvolvimento deste trabalho.
Com o estudo dessas técnicas e levando em consideração todos os fatores
descritos neste capítulo, percebe-se a possibilidade de construção de um modelo real,
versátil e que reproduza com perfeição muitos traços humanos, por exemplo,
utilizando as técnicas de Base Mesh, pois esta técnica agregada a outras técnicas
podem desempenhar um modelo de qualidade e alto realismo.
Como proposta de trabalho, a modelagem dos personagens é realizada
utilizando-se o programa Blender, desta forma, buscou-se neste capítulo o
relacionamento dos conceitos a esta ferramenta o que vem a facilitar a etapa posterior
de modelagem e animação.
3 PROCESSO DE MODELAGEM DE PERSONAGENS 3D

Neste capítulo é descrito o processo de modelagem 3D dos personagens do jogo


Laboratório Virtual. Devido ao grau de complexidade das técnicas e ferramentas para
modelagem a serem utilizadas, exigiu-se dispensar parte do tempo do TCC para o seu
estudo.

3.1 Requisitos dos personagens

A modelagem de humanos será abordada, devido à alta no mercado dos jogos


de simulação de “segunda vida” nos quais os personagens representam o jogador
dentro do jogo. Jogos em que os personagens se assemelham com modelos reais, têm
uma boa aceitabilidade no mercado. Buscando isso serão modelados os personagens
buscando o máximo de realidade possível, descrevendo quais as ferramentas e técnicas
utilizadas.
Será realizada a modelagem de um personagem, um homem. Através deste
personagem, será possível ter idéia das técnicas abordadas, podendo ser aplicadas a
qualquer outro personagem modelado posteriormente.
Os modelos gerados devem conter uma estrutura que possibilite a realização de
movimentos, os mais reais possíveis, levando em consideração os requisitos funcionais
dos computadores, para que os modelos fiquem mais leves a ágeis. Serão criados sem
as roupas, pois com a modelagem das peças de vestuários serão utilizados uma maior
quantidade de polígonos, deixando o modelo mais pesado computacionalmente.
A técnica Low-Poly propõe o uso de poucos polígonos na modelagem 3D. Os
polígonos são utilizados para criação de objetos tridimensionais. Os polígonos
23

geralmente são representados através de triângulos. Porém, para criar objetos com um
alto grau de definição se exige um grande número de polígonos. Mas muitas vezes isso
não é possível, então se opta pelo corte de alguns polígonos, sempre tomando cuidado
para a imagem não ser prejudicada. Para evitar a perca de detalhes essa técnica
geralmente não abrange a cabeça do modelo, pois com baixo número de polígonos,
detalhes pequenos como os dos olhos passam despercebidos. Quando a técnica é
aplicada deve-se tomar cuidado especialmente com partes pequenas, dependendo do
número de polígonos reduzidos. Um exemplo de modelagem utilizando essa técnica
pode ser observado na figura 10.

FIGURA 9 - Técnica High Poly vs. Low Poly


FONTE: (TABAJARA, 2006)

3.2 Modelagem do personagem

Após o levantamento das principais técnicas, optou-se por utilizar a técnica


Edge-Loop, pois ela cria personagens funcionais, e leva em consideração a técnica
Low Poly, ponderando, criando personagens com baixo número de poligonos mas sem
deixar a dejar na questão de modelos o mais reais possíveis. Como já comentado ela é
uma técnica demorada, e que a pessoa que está modelando deve ter noções de desenho,
pois o modelo é construido vértice à vértice, moldando-as.
A modelagem inicia-se pelo rosto do personagem, mais precisamente, pela
forma da boca, seguindo para o seu pescoço, conjuntamente com os ombros e por
24

último o tronco e as pernas. A técnica utilizada para a modelagem dos personagens foi
a Edge Loop.

3.2.1 Forma inicial da boca e da face

Primeiro esboça-se uma boca. Não existe um padrão para isso, e depende do
modelo que se deseja criar. Após esboçar a boca é necessário utilizar o ALT BMB
sobre o Edge Loop, isso selecionará todos os vértices, como mostrado na Figura 10.

FIGURA 10 - Modelagem da boca

Em seguida, é necessário criar a estrutura do Edge Loop sendo necessário


realizar os seguintes passos através do Blender: clicar 3 para ir para a view; 0 para
girar o modelo e visualizá-lo. É possível, ainda, retirar algum vértice ou fazer ajustes
nos mesmos. Para isso, o seletor de vértices deve estar pressionado e, pressionando S,
pode-se aumentar o tamanho das vértices de uma só vez, aumentando o quanto for
necessário, conforme mostra a Figura 11.

FIGURA 11 - Vértices que constituem a boca

Para habilitar edição de novo dos vértices basta pressionar a letra O e dar à
25

boca uma forma movendo alguns vértices com o G. Para isso, pode-se usar duas vistas;
a vista frontal (TECLADO NUM 1) e a vista lateral (TECLADO NUM 3) para melhor
visualizar o rosto e dar a ele forma.

FIGURA 12 - Dando forma a boca

A Figura 13 mostra os resultados da malha moldada. Porém ainda não se


pode ver a forma detalhada, mas já se nota a fenda em que a boca será criada.

FIGURA 13 - Aumentando a boca e dando forma ao


rosto

Neste ponto da modelagem as características do personagem vão ficando


mais pessoais, pois cada designer molda de uma forma diferente o seu personagem,
dando características próprias e diferentes formas.

3.2.2 Criando os olhos

Para a modelagem dos olhos, foram criados dois espaços em que os olhos
são encaixados. Assim, moldam-se as malhas de vértices criando esses espaços. Este
tipo de olho, colocado no espaço criado entre os vértices, chama-se olho socket.
Segue alguns passos:
 Fazer um círculo cortado (Ctrl R) selecionando o local em que são
26

colocados os olhos;
 Em seguida, selecionam-se os vértices e apagam-se as bordas. Para apagar
somente as bordas dos vértices deve-se pressionar X e em seguida opção
Edge. Os vértices permaneceram, mas a bordas são eliminadas. Isto faz
um buraco na malha, como mostra na Figura 14;

FIGURA 14 - Eliminando as bordas dos vértices

Um detalhe importante é que o olho deve ser separado da face, para que
possa rodar livremente. Isto não será possível se juntar os vértices da malha existente.
Em vez disso, vai-se acrescentar um outro objeto a malha.
Para criação de um novo objeto, deve-se alterar para o modo Object (tecla
TAB) e depois adicionar um objeto UV Sphere (tecla de espaço, opção Add >> Mesh
>> UV Sphere). A partir deste ponto é solicitado o fornecimento do número de
segmentos e anéis. Para este caso foram utilizados 8 anéis. Pode-se também clicar na
seta ou botões LMB Image. Após, sobre a caixa para digitar este valor. A Figura 15(a)
mostra o objeto criado.
Após isso, adiciona-se uma malha automaticamente e o modo muda para o
Modo Edição. Volta-se, então, para Object Mode (TAB), movendo-se o olho para o
lugar desejado. Usando os botões G e S pode-se aperfeiçoar o olho. é necessário alterar
27

o ponto de vista para conseguir visualizar o tamanho e localização. Neste momento o


olho não terá um encaixe perfeito, sendo o aperfeiçoamento feito posteriormente. A
Figura 15b apresenta o olho localizado em uma nova posição.
Após isso, usa-se a técnica Set Smooth (no Edit Buttons) e adiciona-se um
modificador Subsurf para fazer o olho ficar com uma aparência mais suave (sem tantos
vértices).

(a) (b)
FIGURA 15 - Adicionando uma Sphere (a) e localizando o olho no
local criado

Após o olho estar posicionado no local desejado, para poupar tempo pode-se
duplicá-lo. Existem algumas maneiras de fazer isso, uma delas é o chamado
espelhamento, que faz algo semelhante a um espelho, simetricamente idêntico ao
objeto original (no caso o olho), porém neste caso não será satisfatório, pois se precisa
manter a separação entre a malha do olho e a da face. Então será seguido outro passo
para duplicar o olho separadamente. Primeiramente deve-se estar no Modo Object.
Após deve-se selecionar a malha, e usar a ferramenta Snap Shift, mostrada na figura
16. Selecionando-se então o olho, com o olho ainda selecionado, utiliza-se Shift+D
para duplicar o olho. E Ctrl + M >> informando ‘X’ como posição do local para
espelhar a duplicata do olho. Voltando então para o modo padrão. A Figura 17
apresenta os dois olhos posicionados.
28

FIGURA 16 - Menu Snap

FIGURA 17 - Os dois olhos colocados

Como comentado anteriormente, os olhos tem movimentos separados do


rosto. Para isso ser possível é necessário colocar os olhos em uma camada diferente da
camada em que o rosto estiver. Para isso, se tem a matriz de botões na parte inferior da
janela 3D (botões Layer), ou as teclas numéricas na linha superior do teclado. Os olhos
serão movidos para Camada 2. Pressionando a tecla ~ pode-se visualizar todas as
camadas. Todos os botões Layers estão marcados, indicando que as camadas estão
selecionadas. Os botões podem ser vistos na figura 18.

FIGURA 18 - Botões Layers

Deve-se selecionar os dois olhos e acessar a opção de mover (camada) com


29

o menu M. Ou, clica-se no botão da Camada 2, como mostrado na Figura 20 abaixo.


Após isso, deve-se certificar se o rosto está na camada 1, com isso, pode-se visualizar,
separadamente, camada por camada.

FIGURA 19 - Adicionando o olhos na camada 2.

A próxima etapa na criação desse personagem é o preenchimento das lacunas


dos olhos, criando-se as pálpebras. Para isso, no modo de edição (TAB), move-se os
vértices ao redor dos olhos chegando o mais perto possível dos olhos, até que não haja
nenhuma lacuna, entre o olho e o rosto. Na figura 20 pode-se ver o resultado desta
etapa.

FIGURA 20 - Preenchimento das lacunas entre os olhos e o rosto

Após isso, pressiona-se Ctrl+R para obter mais alguns vértices, puxando
então os novos vértices para frente e para baixo com o G pressionado, começando a
formar a pálpebra. Repete-se esta ação quantas vezes for necessário, formando-se uma
pálpebra, como pode ser visto na Figura 21.
30

FIGURA 21 - Criação da pálpebra

3.2.3 Moldando a cabeça

Para concluir a modelagem da cabeça foram necessários vários ajustes,


sempre girando em torno da localização dos vértices e o número dos mesmos. Para
isso, foi aumentado o tamanho dos vértices, fazendo com que a cabeça ficasse com
uma forma oval. A seqüência de imagens da Figura 22 mostra a criação da cabeça,
através do aumento do tamanho dos vértices.

FIGURA 22 - Criação da Cabeça

Desta forma selecionam-se alguns vértices os quais são expandindos para


trás. Para facilitar esta etapa pode-se alterar para a vista traseira, tendo-se uma melhor
visão de como a cabeça está ficando (Ctrl + TECLADONUM 1). Assim, movem-se os
vértices recém extrusados em direção ao centro da cabeça com G, até que se feche toda
a parte traseira da cabeça. A seqüência de imagens da figura 23 demonstra esses
passos.
31

FIGURA 23 - Criando a parta traseira da cabeça

Por fim basta fechar os buracos restantes, sempre buscando alongar 4


vértices por vez, para manter uma malha mais firme, como demonstrado na figura 24.

FIGURA 24 - Preenchimento dos buracos entre os vértices

3.2.4 Criando a boca

Finalizando a face, é definida a cavidade da boca. Para isso, muda-se para a


vista lateral do personagem, girando a visualização para ver o interior da cabeça, sendo
então selecionados os vértices que formam os lábios, conforme pode ser visto na
Figura 25.
32

FIGURA 25 - Alongando os vértices dos lábios

A próxima etapa é alterar a visão lateral para o modo Wireframe


(TECLADONUM 3, em seguida tecla Z). Então, se arrastam os vértices que formam os
lábios para traz formando um buraco em direção ao interior da boca. Faz-se isso até
que toda a boca receba um alongamento de vértices, conforme pode ser visto na figura
26.
Após isso, foram criados alguns vértices com o objetivo de dar mais volume
aos lábios (Figura 27).

FIGURA 26 - Visão wireframe dos vértices dos Lábios


33

FIGURA 27 - Dando mais volume aos Lábios

Por fim, é realizado um aumento de vértices, até o fechamento da boca. Com


a criação desses vértices, é possível fazer uma distinção entre face, lábios e boca.
Sendo a partir deste ponto necessário basicamente pegar os vértices e move-los. Nesta
etapa é necessário ativar o botão Subsurf, se isso não acontecer, pode ser difícil ver se
a boca está fechada ou não.
Assim, seleciona-se os vértices e começa-se a fechar a boca. Como a boca
está sendo fechada, tem que se mover os vértices em várias direções. Até obter a forma
desejada.
A série de imagens das figuras 28 e 29 mostra o fechamento da boca, com o
Subsurf ativado no Modo Edição. Primeiro, o lábio superior é deslocado para baixo,
em seguida, o lábio inferior deslocado para cima e, em seguida, os lados da boca foram
elevados.

FIGURA 28 - Lábio superior sendo deslocado para baixo

Ao final o rosto deverá ficar como o da figura 29.


34

FIGURA 29 - Rosto moldado

3.2.5 Criando o pescoço e os ombros

Partindo da cabeça, são criados o pescoço e os ombros. Para isso são


escolhidos alguns vértices e os alonga formando o pescoço. Selecionando Alt + RMB
para selecionar os vértices circundante, e alongar para formar o pescoço (Figura 30).
Para formar os ombros não foi possível utilizar apenas esse número de
véstices, por isso, nessa etapa geralmente são acrescentados novos vértices. Para isso,
foi utilizado o Loop Cut (Ctrl R), adicionando-se novos vértices.

FIGURA 30 - Alongando o pescoço

Foi, então, deslocados três vértices, alongado-os para formar o pescoço para
baixo, como na extruturação do peito na frente e atrás as costas (Figura 31).
35

FIGURA 31 - Alongando os Vértices para criar peito e as costas

O mesmo processo forá utilizado para formar os ombros. Também forá


construída uma estrutura na qual os braços posteriormente são encaixados. Assim,
continuou-se alongando os vértices e criando novos vértices até formar uma estrutura
de malhas que formam as costas e o peito. Na figura 35 é mostrado como deve ficar o
local no qual os braços são encaixados.
Nesta etapa foi utilizado o recurso quad face para um melhor ajuste das
malhas, fazendo com que a aparência do modelo fique mais lisa (plana).
Após isso, basta alongar um pouco mais os vértices e já se terá a parte do
tórax pronta, com as cavidades na qual os braços são colocados (Figura 32 c).

(a) (b) (c)


FIGURA 32 - Etapas de criação do local para encaixar os braços

Em seguida, são feitos os braços, adicionando-se anéis de vértices. As


imagens da Figura 33 demonstram este processo. Primeiramente seleciona-se o anel de
vértices, mostrado na raiz do braço; deslocam-se os vértices, movendo-os para a
direita, aumentando-os um pouco. Faz-se isso mais algumas vezes, até que o braço
36

ganhe forma, ao longo do braço a grossura dos anéis deve ser alterada, para que ele
fique o mais parecido possível com braço humano.

FIGURA 33 - Etapas da construção dos Braços

Levando em consideração que este modelo, por ser voltado a jogos, e não
poder conter um número elevado de polígonos para se tornar mais leve, a mão não foi
muito detalhada. Para isso, basta alongar mais alguns anéis de vértices, um pouco mais
grossa, para se diferenciar do restante do braço (Figura 34).

FIGURA 34 - Criando a mão

Nesta etapa pode-se ampliar a mão (TECLADONUM 7) e posicionar na vista


37

superior (tecla S), para facilitar o trabalho (Figura 35). Sendo, então, fechada a mão, e
criado o polegar.
Para modelar o polegar, criou-se uma extrusão (extrude), fazendo com o que
polígono selecionado fosse expandido, se exteriorizando, dando forma ao polegar visto
na figura 35.

FIGURA 35 - Finalização da mão e criação do polegar

Depois basta seguir os mesmos passos para criação do outro braço. Ao


realizar este processo, o modelo final é apresentado na figura 36.

FIGURA 36 - Modelo com os braços

3.2.6 Criando o tronco e as pernas

A modelagem do tronco segue os mesmo princípios apresentados


anteriormente, bastando realizar a extrusão dos vértices, conforme pode ser visto na
Figura 37.
38

FIGURA 37 - Expandindo os vértices do tronco.

Sendo que no final do tronco, é necessário criar um espaço para as pernas.


Fazendo com que posteriormente elas possam ser encaixadas. Neste caso, seguem-se
os mesmo passos realizados para a criação da cavidade na qual os ombros e braços
foram encaixados, bastando criar e dar formas aos vértices. A Figura 38 apresenta o
aumento dos vértices.

FIGURA 38 - Aumento dos vértices do tronco


39

Na figura 39 pode ser visto o fechamento do tronco, antes da realização da


extrusão das pernas.

FIGURA 39 - Fechamento dos troncos

Após isso, foi modelada a raiz da perna, tornando-a um pouco mais circular.
A exteriorização das pernas seguiu o mesmo princípio da criação dos braços. A Figura
40 apresenta as pernas criadas.

FIGURA 40 - Criando as pernas

Depois disto basta selecionar todos os vértices e moldar, para que fique com
formas mais humanas. Tentando deixar o maior número de vértices possíveis no local
onde formam os joelhos, assim facilitando posteriormente, a etapa de animação. A
figura 41 apresenta esta modelagem.
40

FIGURA 41 - Moldando as pernas

Por fim os pés são criados, selecionando-se alguns vértices da frente do


tornozelo e aumentado-os. A alteração das vistas é importante em todas as etapas, para
uma melhor visualizar do modelo. Na Figura 42 é apresentada este aumento, em uma
vista lateral.

FIGURA 42 - Aumento dos vértices do tornozelo para criação dos pés

Mantendo-se exteriorizando são alongados os três vértices, até que eles


fizessem a volta, formando a sola do pé, e encontrarem com os vértices do tornozelo,
da parte de trás. Como apresentado na figura 43.
41

FIGURA 43 - Criação da parte de cima dos pés e da sola dos pés.

Após isso, iniciou-se o preenchimento das laterais dos pés, selecionando-se


quatro vértices de cada vez. Como mostrado na seqüência de imagens da figura 44 e
45.
Por fim, foi realiza o preenchimento do calcanhar, conforme pode ser visto
da figura 46.
Nesta etapa, foi necessária a criação de novos vértices (Ctrl+-R)
possibilitando a modelagem do pé.

FIGURA 44 - Fechamento das laterais dos pés


42

FIGURA 45 - Fechando da parte traseira dos pés

FIGURA 46 - Preenchimento do calcanhar

Ao final desta etapa da modelagem o modelo pode ser visto na figura 47.
43

FIGURA 47 - Modelo final

3.3 Criação do esqueleto

Para animar o personagem é impossível mover vértice por vértice, por isso,
no Blender e em algumas outras ferramentas de modelagem, usa-se a Armature, que
serve como uma base, que funciona como um esqueleto, fazendo com que o objeto se
mova, neste caso o personagem.
Uma armadura deve ser composta de muitos ossos. Cada osso pode ter
alguns vértices atribuídos. Assim, quando um osso se move, apenas os vértices
atribuídos a ele se movem. A meta é estabelecer os ossos de modo que ao mover um
osso, haja um suave movimentação do osso vizinho, para se tornar um movimento
mais real. Nesta etapa foi utilizado o Mirror modifier para facilitar o trabalho.
Para isso, com a malha selecionada, acessa-se o botão editar e, na opção
Mirror Modifier, clica-se em aplicar (aplicando o modificador Mirror para fazer o
espelhado dos vértices reais) como mostra a figura 48. Basta clicar na mensagem e
44

alterar, no ok como mostrado na figura 57. O Mirror será automaticamente transferido


para o topo da pilha. Ainda neste menu, é apresentada a mensagem “Applying will
delete mesh sticky, keys, and vertex groups”, esta opção faz com que seja feita a
criação de grupos de vértices.

FIGURA 48 - Selecionando Mirror

Feito isso, é acrescentado o esqueleto ou armadura. Para tirar proveito das


ferramentas de modelagem simétricas, fez-se com que o centro da armadura ficasse no
o centro do personagem. A Figura 49 apresenta o modelo marcado no seu vértice
central.

FIGURA 49 - Linha central do modelo

Para incluir uma armadura, deve-se selecionar a opção Add Armadure Object
pressionando a tecla de espaço, opção add, selecionando armature.
Assim que é adicionada a armadura, a qual é composta por um único osso.
Como com as malhas, existem dois modos Object e Editar, e quando se adiciona uma
armadura entra-se automaticamente no modo Editar. Pode-se dizer que está no modo
Editar quando se vê amarelo (selecionado) ou rosa (não selecionado) nas extremidades
dos ossos. Cada osso tem um ROOT (início do osso) e um TIP (final do osso).
Com a armadura selecionada, algumas definições importantes sobre a edição
podem ser encontradas, dentre elas:
45

 No painel sobre a armadura botões Editar, deve-se certificar se X-Axis


Mirror Edit está selecionado (Figura 50). Isso permitirá fazer
simetricamente os ossos;
 Deve-se certificar, também, se raio-X está selecionado (Figura 50). Isso
faz com que os ossos fiquem visíveis através da malha, facilitando a
edição;

FIGURA 50 - Painel sobre a Armature

 Para selecionar um osso inteiro deve-se clicar no meio dele. Pode-se


também selecionar um osso através da seleção de sua raiz e, em seguida,
clicando SHIFT;
 Para mudar para Vista lateral, e deslocar o osso, praticamente alinhado
com o pescoço, deve-se selecionar as pontas, e mover um pouco as
pontas para ampliar o osso no eixo-Z (Figura 51).

Com esses detalhes observados, basta, a partir deste primeiro osso, adicionar
os demais, sendo a coluna formada. A Figura 62 apresenta a coluna com os ossos que a
compõem.
Com um osso selecionado, ainda é possível alterar o nome do osso na opção
Modificar botões do painel armadura dos Ossos (Armature Bones). Esta é uma etapa
importando, onde foi selecionado cada um dos ossos da coluna vertebral nomeados.
Nesses casos, os nomes foram a partir das bases, spine1, spine2, spine3, spine4,
spine5, pescoço e cabeça.
46

FIGURA 51 - Alinhando o osso

FIGURA 52 - Formando a coluna

3.3.1 Colocando a armadura nos braços

Voltando-se para a Visão Frontal, é selecionada a ponta do Spine4, e clica-se


Shift+E para criar um novo osso. Com a ponta do ombro ainda selecionada, seguindo-
se os mesmo passos até colocar todos os ossos no braço. A Figura 53 apresenta uma
seqüência de imagens desta criação.
47

FIGURA 53 - Etapas da criação dos osso do braço do braço

Deve-se ter cuidado com os nomes desses ossos. Depois de formar os dois
lados (direito e esquerdo) dos ossos, os mesmo são nomeados. Porém como eles são
equivalentes, é padronizado a inclusão das letras L e R para identificar como direito
(rigth) e esquerdo (left). A figura 54 apresenta os osso, criados e nomeados.

FIGURA 54 - Apresentação dos ossos nomeados

Após isso, é realizado o mesmo procedimento para criação dos ossos das
pernas e pés. Primeiramente foi criado os ossos que unem as duas pernas com o
restante do corpo (figura 55), fazendo com que esses ossos funcionem como eixo o
48

personagem.

FIGURA 55 - Osso que une as pernas

A Figura 56 apresenta os ossos da perna e pés criados.

FIGURA 56 - Ossos das pernas e pés.

Depois de criados, os ossos são nomeados, levando em consideração os


mesmos padrões dos ossos do braço. A Figura 57 apresenta os ossos nomeados.
Após a criação de todos os ossos, basta a realização de alguns ajustes, tais
como tamanho e posicionamento, melhorando o esqueleto do personagem.
49

FIGURA 57 - Óssos das pernas nomeados

Os ossos criados sofrem uma hierarquia, pois um osso de hierarquia superior,


faz com que todos os seus inferiores se movimentem. Esta hierarquia deve ser
configurada, informando quem é o pai e o filho. Os ossos neste etapa são identificados
como Bone.
Assim, o bone pai tem controle sobre o bone abaixo dele na hierarquia. Se
movimentado o bone pai, o bone filho se move junto; mas, se mover o bone filho, o
bone que está acima dele na hierarquia não se move junto.

3.4 Iluminação e renderização

Com um personagem modelado, agora se pode trabalhar sobre a criação de


iluminação e de saída da cena para uma imagem (renderização).
No Blender, por default, a cena tem um cubo, uma lâmpada e uma câmera.
Na primeira etapa é acrescentado uma câmera para a cena, para que se possa visualizar
o personagem, e lâmpadas para iluminação do ambiente.
50

3.4.1 Adicionar uma câmera

A câmera é um tipo especial de objeto no Blender. A visão da câmera vai


determinar o ponto de vista da produção final, quer se trate de uma imagem ou uma
animação.
Para a inclusão da câmera os seguintes passos devem ser realizados:
 Move-se o cursor 3D para algum lugar onde pode-se ver o personagem
 Altera-se para Vista Frontal (TECLADONUM 1).
 Adiciona-se uma câmera Espacial (menu Câmera). Isto vai acrescentar
uma câmara onde está o cursor 3D.
Agora existe um outro objeto na cena (câmera). A praça é a parte frontal da
câmera e uma seta preta aponta para cima, para que se saiba qual direção fica virada
para a câmera. A Figura 58 apresenta o personagem sendo observado a partir da
câmera.
Para mudar o ângulo da câmera, basta seleciona-la e pressionar G.

FIGURA 58 - Visão da câmera

Nesta etapa é possível escolher qual lente da câmera é a mais adequada para
o personagem, o Blender possui vários tipos de lentes, como descrito no capítulo 2. No
modelo da figura 58 a lente da câmera é de 20mn.

3.4.2 Iluminação

Também é necessário incluir uma luz na cena. A iluminação utilizada é a


51

mais simples, com uma única lâmpada sendo utilizada.


Para a inclusão os seguintes passos devem ser realizados:
 Mudar a câmara de visualização;
 Criar uma lâmpada do tipo Hemi no cursor 3D. Pressionando a tecla de
espaço, opção Lamp >> Hemi. Hemi é a abreviação de "hemisférica", e
simula a uniforme luz do céu. Simula uma grande fonte de luz, a posição
de um Hemi lâmpada não importa, só a sua rotação. Na figura 59 a
lâmpada pode ser visualizada.

FIGURA 59 - Hemi Lâmpada

Após a criação das lâmpada Hemi, e com ela ainda selecionada, foi
pressionada Alt+R para limpar rotação. Assim, a sua direção ficou indicada por uma
longa linha tracejada: que agora é apontada para baixo. Pode-se mover a lâmpada para
qualquer lugar, neste caso a lâmpada, foi deixada um pouco a frente do modelo. Como
apresentado na figura 60.

FIGURA 60 - Lâmpada Hemi posicionada


52

3.4.3 Renderização

Para visualizar melhor o modelo, o mesmo deve ser renderizado, assim pode-
se ver como o modelo fica com os ajustes de iluminação. Neste caso, a cena só possui
um objeto, as mudanças não foram muito significativas, mas em casos de mais objetos
em cena, a renderização se torna muito importante. Na figura 61 pode-se ver o modelo
renderizado.

FIGURA 61 - Modelo renderizado

Após a renderização do modelo, pode-se fazer alguns ajustes no painel de


iluminação, aumentando ou diminuindo a luz etc. As figuras 73 e 74 apresentam o
painel de configuração da iluminação, no qua podem ser observadas alterações de
energia e influencia das cores RGB sob a luz.

FIGURA 62 - Painel de Iluminação e suas configurações


53

3.5 Conclusão

A Modelagem com a utilização da técnica Edge-Loop se mostrou bastante


proveitosa, porém, bastante trabalhosa também, devido ao número de vértices
necessário para montar um personagem.
Foi constatado também que o Blender, mesmo sendo um software gratuito, é
uma ferramenta completa para modelagem 3D, possuindo diversos recurso úteis, um
exemplo é o Mirror modifier, que a partir do modelo modelado de um lado, ele gera
simetricamente a modelam no lado oposto.
Um ponto onde foi encontrada dificuldade foi no momento de criar as formas
humanas do modelo, pois a princípio nesta etapa seria utilizado o Software Make
Human, que gerava toda a base do modelo, já com formas humanas bastante apuradas,
porém ao realizar alguns testes, descobriu-se que o software não era adequado para
utilização neste modelo, pois gera a base com um número elevado de polígonos, o que
como comentado neste capítulo deixa o modelo muito lento para ser utilizado
posteriormente em jogos.
Com o esqueleto criado, tem-se praticamente a base para a animação do
personagem. Sendo que a etapa aqui descrita é muito importante para a seqüência
deste trabalho.
4 ANIMAÇÃO DOS PERSONAGENS

Neste capítulo é descrito o processo de animação de personagens, tomando


como base estudos realizados no capítulo 2. Também são descritos aqui os processos
necessários para introduzir os modelos 3D dentro da ferramenta de programação Java
3D.

4.1 Animando o personagem

Nessa etapa foi criada uma série de movimentos, utilizando o esqueleto


montado e apresentado no capítulo anterior.
Alguns passo foram seguidos para realização destas animações, dentre eles:
 Clicar na opção RMB Image e escolher Split área (figura 63). Com isso,
aparece uma linha que serve como uma nova divisão.

FIGURA 63 - Acessando Split Área

 Uma nova janela de configuração é criada. Esta janela deve ser alterada
para o tipo Action Editor, como apresenta a figura 64.
55

FIGURA 64 - Acessando Action Editor

E no Action Editor que foram criadas as ações faciais, movimentos de


cabeça, braços etc.
Será apresentada aqui uma animação, somente para explicar alguns
princípios da animação, sendo os mesmos repetidos posteriormente. Para isso é feito
um movimento com o braço do modelo.
Deve-se deixar a opção Auto IK off, para que se possa mexer o osso do
braço. Na figura 65. Mostra-se a posição aproximada que o braço deve ficar para ser
realizada esta ação.

FIGURA 65 - Trabalhando a animação do braço

Com os ossos na posição, pode-se acrescentar as chaves. Uma chave


56

descreve a orientação de um osso: a sua localização, rotação e tamanho. De modo


geral, só se deseja adicionar as chaves para os ossos que realmente fazem algum
movimento.
Após isso, selecionam-se os ossos que foram usados para esta ação, no caso,
todos os ossos do braço e insere-se um LocRot, conforme a figura 66.

FIGURA 66 - Inserindo um LocRot

Na janela de ação existem várias linhas, ou canais, e cada uma tem um nome
que corresponde a um osso na armadura selecionada. Cada canal está ligado ao osso.
Quando se seleciona um osso, o canal correspondente é selecionado, o mesmo
acontece se um canal é selecionado, o osso correspondente também é selecionado. Na
Figura 67 é apresentado o canal lower_arm.l selecionado.

FIGURA 67 - Canais

Ainda na Figura 67 pode-se notar alguns pontos amarelos. Estas são as


chaves da animação. Eles estão alinhados ao longo de uma linha verde, que indica que
o quadro de animação. No exemplo da figura 67, está no frame 3, sendo todas as
57

chaves acrescentadas neste frame. Como já citado no Capítulo 2, é através desses


frames que são feitas as animações.
Passando para o frame 5 e habilitando a opção auto keyframing o Blender
insere automaticamente um novo quadro chave caso seja movido um osso.
Na figura 68 pode ser observado um quadro chave, sendo que foi
movimentado o osso lower_arm.l. As chaves velhas então desmarcadas em branco e as
novas chaves são selecionadas em amarelo.

FIGURA 68 - Novas chaves

Apresenta-se agora uma animação onde o personagem dará alguns passos.


Para isso, foi adicionada uma nova ação, sendo o nome desta nova ação Walkcycle. Na
Janela 3D, muda-se para o Vista lateral no modo Ortho (TECLADONUM 3 e 5).
Moveu-se então o spine1 um poco no eixo Z e dobrou-se um pouco as pernas,
conforme pode ser visto na Figura 69.

FIGURA 69 - Movendo Spine1 e dobrando as pernas

Na figura 70 pode-se observar o movimento realizado no leg.l para trás e


para cima. Movendo-se também o toe1 (pé).
58

FIGURA 70 - Movendo legl

Com base nos estudos sobre animação realizados no capítulo 2, no qual


foram vistos bibliografias sobre movimento humano e animal, tentou-se mover os
ossos que de forma a simular uma caminhada verdadeira. Como em uma caminhada
humana os braços também precisam ser animados. Nesse momento é importante
mudar várias vezes a posição da câmera, buscando se alcançar um grau de realidade
maior. Na figura 71 pode-se ver o principio desta animação.

FIGURA 71 - Braços e Pernas sendo animados.


59

A cada movimento criado, é importante que se crie o ponto chave no Action


Editor, especificando também o número de frames entre esses pontos. Após marcar
todos os pontos chaves e ajustar os frames, seguem mais algumas instruções.
Um movimento de caminhada perfeito pode usar vários frames e ser bem
demorado, pois quanto mais frames, maior o movimento do osso, e mais próximo da
perfeição. Neste modelo a parte da caminhada possui 21 frames.

4.1.1 Animando a face

Eventualmente pode-se adicionar som para a animação e sincronizar os


lábios do personagem com o som. Para fazer isso é necessário fazer a forma da boca e
as expressões faciais.
Assim como foram usadas chaves para descrever as posições de um osso, os
Shape Keys descrevem a posição dos vértices em uma animação. É importante
observar que a face não é formada de ossos, e sim vértices.
As Shape keys são mais utilizados para expressões faciais. Foram criados,
aqui, algumas Shape Keys básicas, como: abrir a boca, sobrancelhas para cima,
sobrancelhas para baixo e fechar os olhos. Com essas Shape Keys criadas é possível
misturar expressões faciais em uma animação, sincronizando ainda os lábios a um
arquivo de som.
Esta é uma etapa que consome um bom tempo, pois é um trabalho complexo
criar uma expressão real.
A seguir é apresentado foi criação da Shape Key para animação da boca. No
botão de edição do painel Shape, as malhas devem ser selecionadas antes de selecionar
os controles. O painel Shape é apresentado na figura 72.
Neste painel é necessário pressionar o botão Add Shape Key. A forma Basis é
a forma padrão na qual foi modelado o personagem. Neste caso não foi realizada
nenhuma mudança, sendo que esta ficou como referencia para todas as outras formas.
Assim, adiciona-se uma outra Shape Key, que é uma cópia da Basis Shape,
nomeando-a esta nova forma.
60

FIGURA 72 - Painel Shapes

É importante que no painel Mesh Tools, mantenha-se pressionado o botão X-


axis mirror, pois este permite trabalhar simetricamente no mesh.
Assim, começou-se a modelagem pela primeira forma chamada open
(abertura da boca). O Shape Key funciona da mesma maneira que os Keys utilizados
para a animação utilizando ossos, porém, os frames são formados pelo movimento das
vértices.
Na figura 73 pode-se observar algumas animações de abertura de boca e
movimentação de pálpebras.

FIGURA 73 - Exemplos de animação da face do personagem

4.2 Inserindo o personagem dentro do ambiente de programação Java 3D

Para a realização desta etapa utilizou-se a ferramenta Java 3D, dentro do


Ambiente de programaçao IDE NetBeans 6.1 e para isso, necessitou-se um estudo da
61

estrutura do programa Java 3D para a inserção dos objetos.

4.2.1 Java 3D

O Java 3D oferece um modelo de programação em alto nível. Isso permite


ao programador conseguir uma abstração maior em termos de código e, por
consequência, uma maior facilidade de codificar uma determinada idéia. Tudo isso,
deve-se ao fato do Java 3D utilizar o conceito de grafo de cena (MALFATTI e
FRAGA, 2008a).
Grafo de cena é uma estrutura hierárquica para organiza objetos que
compõem e definem uma cena, preservando às relações espaciais existentes entre esses
obejtos, tais objetos referem-se tanto ás geometrias e suas propriedades, como às
infomações necessárias para que a cena seja renderizada de um ponto particular de
visão. Esse conceito permite ao desenvolvedor incorporar a orientação a objetos em
aplicações Java 3D, fazendo o uso de conceitos como abstração, encapsulamento,
herança e polimorfismo.
Um grafo de cena é formado por nós conectados por arestas, compondo um
DAG (Directed Acyclic Graph), ou seja, um grafo acíclico direcionado. Dentre as
principais características desse tipo de grafo pode-se destacar que cada nó filho possui
somente um pai e que não são formados ciclos entre os nós.
No Java 3D, o grafo de cena é encapsulado pela classe VirtualUniverse, que
define um universo virtual. Os nós que compõem a cena derivam da classe Node e
possuem apenas um pai. Um grafo de cena contém também objetos derivados da classe
Group que encapsula uma coleção de filhos de objetos do tipo Node. Os nós que
compõem o grafo de cena podem representar geometrias, sons, luzes, posições,
orientações e aparência de objetos visuais.
Além dos nós, o grafo de cena possui também os arcos que representam a
relação entre os nós, que nada mais são do que instâncias de classe Java 3D. Existem
dois tipos de relação entre instâncias Java 3D, sendo a mais comum a relação de
herança entre pai e filho. Nesse tipo de relação, um nó do tipo Group pode ter um ou
mais filhos, porém apenas um pai. A outra relação é a de referência, que simplesmente
62

associa um nó componente com um nó de cena. Um nó componente define a


geometria e a aparência usadas para renderizar o objeto. Existem ainda nós do tipo
folha que podem possuir apenas um pai e nenhum filho.

4.2.2 Grafo de cena do Java 3D

Cada cena gráfica deve possuir um único universo virtual, representado por
um objeto tipo VirtualUniverse. É o universo virtual que o desenvolvedor irá
preencher com geometrias, luzes e outros elementos. O objeto locale serve para definir
uma área geográfica no universo virtual que por default é centrada na coordenada 3D
(0, 0, 0).
Um grafo de cena pode conter muitos subgrafos, porém, por mais simples
que seja o programa, tem que se criar no mínimo dois subgrafos: o primeiro,
denominado de subgrafo de contexto, contenham os objetos que fazem parte da cena
virtual (geometrias, luzes, cenário etc.) e o outro denominado subgrafo de
visualização, possuirá todos os objetos necessários para criar, posicionar, direcionar e
movimentar a câmera virtual, pois mesmo que se tenha criado o cenário, sem a câmera
o seu mundo virtual não poderá ser visualizado (MALFATTI e FRAGA, 2008a). A
figura 74 mostra essa divisão do grafo de cena.
Essa divisão ocorre pelo fato de que é preciso separar os objetos
responsáveis pela câmera dos objetos que estão na cena, pois caso contrário, sempre
que movimentar a câmera, os objetos do cenário se movimentaram junto com ela.

FIGURA 74 - Subdivisão do Grafo de cena

Como exemplo, um jogo FPS (First Person Shooter), em que o cenário pelo
63

qual anda o personagem possui vários objetos em movimento. Pode-se dizer então que
todos os objetos do cenário, bem como o próprio cenário, estarão contidos no subgrafo
de contexto. Já o braço do personagem e sua arma (supondo que o FPS seja estilo
Doom) estarão contidos no subgrafo de visualização, pois devem movimentar-se
juntamente com a câmera. A figura 75 apresenta um exemplo desta representação em
um grafo de cena.

FIGURA 75 - Jogo FPS e uma possível representação para o seu grafo de cena

4.2.3 Interfaces e classes base do pacote Loader

O Java 3D não possui um formato de arquivo nativo. Sendo assim, um


Loader lê um arquivo texto ou binário e o converte em uma estrutura de grafo de cena
para que assim o Java 3D possa renderizá-lo. Dentre os formatos de Arquivos que
podem ser importados estão: Wavefront (.obj), 3D Studio Max (.3ds) e VRML (.wrl).
Basicamente a tarefa fundamental de um Loader é ler um arquivo que
descreve uma cena, contendo um ou mais objetos, e fazer com que esta seja entendida
pelo Java 3D. Para isso um Loader cria um grafo de cena que representa o conteúdo
do arquivo (MALFATTI e FRAGA, 2008b).
Interfaces são utilizadas para dar aos Loaders de vários formatos de arquivos
uma interface comum, bem como facilitar a criação de um carregador, visto que uma
interface define métodos básicos para o carregamento de um arquivo.
O pacote Loader conta com duas interfaces (MALFATTI e FRAGA, 2008b):
 Loader: Usada para ler, analisar e criar um grafo de cena Java 3D do
64

conteúdo do arquivo, de acordo com o formato especificado.


 Scene: Usado para armazenar as informações dos elementos do grafo de
cena criado pelo Loader possibilitando que tais informações sejam
recuperadas.

A interface Loader permite carregar uma cena de um arquivo armazenado


localmente, de uma URL ou ainda de um objeto Reader, através do uso dos seguinte
métodos, respectivamente:
 Scene load (java.lang.String filename): Método que carrega o arquivo
especificado por filename.
 Scene load (java.net.URL url): Método que carrega o arquivo
especificado pela url.
 Scene load (java.io.Reader reader): Método que carrega o arquivo
especificado por reader.

Como se pode ver, todos os métodos retornam um objeto do tipo Scene, o


qual contém toda a cena carregada. A partir desse objeto é possível obter informações
específicas da cena carregada, como se a cena contem luzes, som, comportamentos,
etc.
Ainda para a Interface Loader pode utilizar os seguintes métodos:
 void setBasePath (java.lang.String pathName): Método que configura o
local em que o arquivo a ser carregado se encontra.
 void setBaseUrl (java.net.URL url): Método que configura a url em que
o arquivo a ser carregado se encontra.
 void setFlags (Int Flags): Método que atribui determinadas
configurações ao arquivo a ser carregado, sendo elas:
 LOAD_ALL: Permite o carregamento de todos os objetos na cena.
 LOAD_BACKGROUND_NODES: Permite o carregamento de objetos
do tipo Background na cena
 LOAD_BEHAVIOR_NODE: Permite o carregamento de
65

comportamentos na cena.
 LOAD_LIGHT_NODES: Permite o carregamento de objetos tipo
Light na cena.
 LOAD_SOUND_NODES: Permite o carregamento de objetos do tipo
sound na cena.
 LOAS_VIEW_GROUPS: Permite o carregamento de objetos do tipo
view (câmera) na cena.

A interface Scene permite que se obter informações sobre a cena carregada,


para isso é utilizado os seguintes métodos:
 BranchGroup getSceneGroup(): Método que retorna o BranchGroup que
contém toda a cena carregada pelo Loader.
 Background getBackgroundNodes(): Método que retorna um vetor de
todos nós do tipo Background presentes na cena.
 Behavior getBehaviorNodes(): Método que retorna um vetor de todos
nós do tipo Behavior presentes na cena.
 Light getLightNodes(): Método que retorna um vetor de todos nós do
tipo Light presentes na cena.
 Sound getSoundNodes(): Método que retorna um vetor de todos os
objetos do tipo Sound presentes na cena.
 java.util.hastable getNamedObjects(): Método que retorna uma tabela
contendo uma lista de todos os nomes dos objetos presentes no arquivo e
os seus objeto no grafo de cena correspondente.

Além das interfaces, o pacote Loader tem as seguintes classes base que
implementam estas interfaces:
 LoaderBase: Implementa: Loader - Classe base abstrata que pode ser
usada como um ponto inicial para um Loader. Um Loader para um
formato de arquivo específico poderia estender esta classe e implementar
seus métodos.
66

 Scene Base: Implementa: Scene - Classe responsável pelo


armazenamento e recuperação de dados de uma cena. Muitos Loaders
também utilizam esta classe.

Como essas classes são geralmente utilizadas para a criação de novos Loaders,
não iremos nos deter em seus métodos.

4.2.4 Carregar objetos 3D utilizando loaders

Para carregar um arquivo de um formato específico geralmente devemos


seguir os seguintos passos:
 Encontrar um Loader para o formato de arquivo que se quer carregar, caso
ele já não esteja no pacote com.sun.j3d.loaders;
 Se o loader não vier no pacote com.sun.j3d.loaders, deve-se salvá-lo, na
pasta \ ext encontrada no diretório onde está instalado o seu jdk em jre\lib.
 Importar no programa as classes do loader para que você possa utilizá-lo,
classes estas específicas a cada loader.
 Declarar um objeto do tipo Scene que será usada posteriormente;
 Criar um objeto do tipo de loader utilizado;
 Carregar o arquivo e atribuir à cena resultante na variável do tipo Scene
declarada;
 Inserir a cena no grafo de cena.

4.2.5 Carregando Arquivo.obj

Para a importação dos personagens modelados neste trabalho, será utilizada o


Loader chamado ObjectFile, o qual é distribuido no pacote com.sun.jd3.loaders e
implementa a interface Loader vista anteriormente.
Para instanciar um Loader do tipo ObjectFile pode-se utilizar um dos seguintes
construtores:
ObjectFile ( ): Construtor que cria um carregador padrão.
67

ObjectFile (int flags): Construtor que cria um carregador com as configurações


especificadas por Flags.
ObjectFile (in, flags, float creaseAngle): Contrutor que cria um carregador
com as configurações especificadas por flags e creaseAngle.

4.2.6 Inserindo o Modelo dentro do Cenário

Para inserir o modelo dentro do cenário foi criado o código abaixo.

QUADRO 1 - Código Fonte inserção do modelo


1 public class GameObjectList extends Vector{
2 private String sNameObjects[] =
3 {"COBRA.3ds","characteranimation.wrl","rhino.wrl","sabre.wrl","c
4 haracteranimation.wrl"};
5
6 public GameObjectList()
7 {
8 for (int iIndex=0; iIndex<sNameObjects.length;
9 iIndex++)
10 {
11 this.add(new GameObject());
12 }
13 }
14 public void LoadObjectAt(int iIndex)
15 {
16 if (iIndex >= sNameObjects.length)
17 return;
18
19
20 ((GameObject)this.elementAt(iIndex)).loadFile("Models\\"+sN
21 ameObjects[iIndex]);
22 }
23
24 public void release()
25 {
26 for (int iIndex=this.size()-1; iIndex>=0; iIndex--)
27 {
28 ((GameObject)this.elementAt(iIndex)).release();
29 this.remove(iIndex);
30 }
31 }
32 public int getTotalObjects()
33 {
34 return sNameObjects.length;}
35 }
68

FIGURA 76 - Tela do Java 3D com o personagem modelado

4.3 Inserção do modelo dentro de C++ com Plungin Blitz3D

Após serem feitos mais estudos, se viu que o Java 3D juntamente com a IDE
NetBeans 6.1 nem sempre é a melhor opção para a criação de jogos, com isto uma
nova opção foi encontrada, devido a grande aceitação por parte de programadores
especializados em jogos, também se apresentará a inserção do modelo dentro de um
ambiente de programação em C ++, no caso o Visual Studio, utilizando também um
Plugin do próprio Blender, o Blitz3D.
O Blitz3D possui a sintaxe Basic e tem suas funcionalidades gráficas
baseadas em DirectX. É uma ferramenta ideal para desenvolvimento de jogos,
aplicativos gráficos, simuladores e realidade virtual para pequenas empresas, projetos
de baixo custo, desenvolvedores autônomos, ou para iniciantes.
Ele encapsula DirectX e fornece uma interface simples e intuitiva para
manipular essa poderosa API. Dessa forma, você pode criar aplicativos surpreendentes
69

com poucas linhas de código e sem perder a versatilidade.


As aplicações construídas nessa ferramenta possuem altíssima qualidade
gráfica e incrível escalabilidade. Dessa forma é possível construir jogos muito grandes,
com cenários complexos e com incrível qualidade.
Apesar de ser muito fácil, o Blitz3d não é um maker, é uma linguagem. Ao
usar essa ferramenta, têm-se total liberdade para criar qualquer tipo de aplicação,
como, por exemplo, controlar modelos 3D vértice a vértice. Além de possuir uma
grande quantidade de recursos, ele ainda pode ter o seu potencial expandido por meio
de adição de Dlls construídas em C++.

FIGURA 77 - Modelo dentro do Ambiente de programação Utilizando


Blitz3D

O modelo dentro deste ambiente, foi programado, para seguir alguns


comandos:
Modelo
I = Frente
K = Tras
J = Rotação para a Esquerda
L = Rotação para a direita

Alguns movimentos de câmera também foram programados:


70

Câmera
W = Cima
S = Baixo

4.4 Modelo dentro de um ambiente 3D

Como já comentado anteriormente o uso de modelos 3D não se aplica


somente a jogos, mas também a animações, desta maneira o modelo criado também
será inserido dentro de um ambiente 3D. Para este passo, utiliza-se o programa Blitz
3D, ele é utilizado para importar o modelo criado dentro do Blender direto para uma
ambiente virtual.
Na imagem abaixo, o modelo criado está inserido dentro de um ambiente
virtual também criado utilizando a ferramenta Blender.

FIGURA 78 - Modelo dentro de um ambiente virtual.


71

4.5 Conclusões

A animação do modelo com as técnicas de quadros chave e Shape Keys se


mostrou bastante proveitosa e não muito complicada, tornando a animação um
processo mais simplificado de se fazer.
O Java 3D como ferramenta de programação possui todos os recursos
necessários para a inserção do modelo dentro de um ambiente de programação. O
Modelo gerado pelo Blender foi facilmente inserido no Java 3D, apenas com a
necessidade de se adicionar os Loaders para objetos do tipo OBJ.
5 CONSIDERAÇÕES FINAIS

Este trabalho teve como principal objetivo, o estudo e modelagem de


personagens humanóides 3D, tomando como incentivo o crescimento da indústria de
jogos e animações 3D.
Para realização deste trabalho foram estudadas várias técnicas de
modelagem, e também foram realizados estudos sobre a ferramenta Blender e outras
ferramentas que poderiam ser utilizadas para contribuir com o trabalho.
Os objetivos específicos foram atingidos, as melhores técnicas foram
levantadas, o modelo foi desenvolvido utilizando uma delas, no caso Edge Loop. A
técnica foi escolhida, devido ao número de vértices que ela utiliza o que possibilita a
modelagem de personagens que podem ser utilizados para jogos. Foi desenvolvido um
passo a passo da criação do modelo, de sua armature (estrutura necessária para que o
personagem possa ter movimentos) e de como a animação é gerada, para que com base
no estudo realizado os leitores interessados possam criar seu próprio modelo.
Além dos itens propostos dentro dos objetivos específicos, foi acrescentado no
capítulo de animação, a inclusão do personagem desenvolvido tratando da inclusão do
mesmo em um ambiente de programação, no caso, o Java 3D, pois se verificou que a
maioria dos personagens modelados são utilizados para jogos, era de grande valia
abordar esse assunto.
Uma das questões que gerou mudança de planos neste trabalho trata-se da etapa
da modelagem do personagem, sendo que a idéia inicial era a utilizar o software Make
Humam para a criação da base do personagem, só depois de realizar alguns testes foi
descoberto que a ferramenta gera o modelo com muitos polígonos, o que atrapalha
muito a inserção do modelo dentro de um ambiente de programação, principalmente
73

sendo o objetivo deste TCC a criação de personagens para serem reaproveitados em


jogos.
Como continuidade desse trabalho existe a proposta de agregar os personagens
criados neste trabalho ao micro mundo virtual modelado por Simonetti (2008), com o
objetivo de criação de um jogo em 3D.
RERÊNCIAS BIBLIOGRÁFICAS

ALVES, A. W. Modelagem e animação com blender. São Paulo, v.2. 2006.

BICHO, A.L.; SILVEIRA JR, L.G.; CRUZ, A.J.A.; RAPOSO, A.B. Programação
Gráfica 3D com OpenGL, Open Inventor e Java 3D. Revista Eletrônica de Iniciação
Científica (REIC). Vol. II, n. I, Março 2002. SBC, Brasil. Disponível em: <
http://www.tecgraf.puc-rio.br/~abraposo/pubs/reic2002/ProgramacaoGrafica.pdf>.
Acesso em: 16 junho 2008.

BLENDER. Blender.org. Site de desenvolvimento de motores de jogos 3D.


Disponível em:<http://www.blender.org/>. Acessado em: 01 ago. 2007.

HAYASHI, A. D. O comportamento cárdico dos jogos de RPG e a aprendizagem.


Rev. PEC, Curitiba, v. 3, n. 1, p. 59-66, jul. 2002.

KOBASHIKAWA, D. Estudo comparativo de ferramentas para motores de jogos


RPG. 2007. 92 f. Trabalho de Conclusão de Curso (Bacharelado em Informática),
Universidade do Planalto Catarinense, Lages.

LIFE, Grupo Second. Second Life. Brasil, 2007. Disponível em:


<http://www.gruposecondlife.com.br>. Acessado em: 29 out. 2007.

MALFATTI, S; FRAGA, L. Introdução a Programação Java e sua API JAva 3D.


Notas de Aula do Curso de Desenvolvimento de Jogos com Java+Java 3D. UNIDEV.
Disponível em: <www.unidev.com.br>. Acessado em: 24/02/2008a.

MALFATTI, S; FRAGA, L. Importando Modelos 3D para o Universo Virtual.


Notas de Aula do Curso de Desenvolvimento de Jogos com Java+Java 3D. UNIDEV.
Disponível em: <www.unidev.com.br>. Acessado em: 27/03/2008b.

SBC. Jogos e educação. Computação Brasil, Bento Gonçalves, ed. 0327, p. 19,
jun.jul.ago. 2007.

SENNA, O. A arte interativa. Computação Brasil, Bento Gonçalves, ed. 0327, p. 16,
jun.jul.ago. 2007.

SIMONETTI, D.C. Modelagem do micro mundo UNIPLAC Virtual em 3D. 2008.


Trabalho de Conclusão de Curso (Bacharelado em Informática), Universidade do
Planalto Catarinense, Lages.

STRACCIA, Alessandro. Introdução a História da Computação Gráfica. XUTI


75

GAME DEVELOPMENT. 2002. Disponível em: < http://www.xuti.net>. Acesso em:


05 de abril de 2008.

TABAJARA, Raul. Edge- Loop: Conceito e prática. 3D Arts - Tutoriais. Disponível


em:< http://www.3darts.com.br/tutoriais/edge_loop.php>. Acesso em: 20 de março de
2008.

WIKIPEDIA Website. Second Life. Disponível em: <http://pt.wikipedia.org/wiki/


Second_Life >. Acessado em: 26 out. 2008.
APÊNDICES

APÊNDICE 1 – ARTIGO...........................................................................................72
Apêndices I - Artigo

Modelagem e Animação de Personagens Humanóides 3D


Caroline Pereira, Sabrina Bet Koerich

Departamento de Ciências Exatas e Tecnológicas


Universidade do Planalto Catarinense (UNIPLAC)
Caixa Postal 525 – 88.509-900 – Lages –SC – Brasil
karol.aw@gmail.com; sabrina@uniplac.net

Resumo. Cada vez mais os jogos estão inseridos na vida das pessoas, e em várias
faixas de idade, com o crescimento dessa indústria o artigo tem como objetivo
demonstrar algumas técnicas utilizadas para a criação de modelos, utilizando o
Software de modelagem 3D Blender. Os modelos criados tanto podem ser inseridos
dentro de um ambiente de programação 3D, quanto utilizados para a animação. As
técnicas utilizadas para a criação do modelo levam em consideração fatores que
resultam em modelos com bom desempenho, mobilidade e interação.
Abstract.. Each time more the games are inserted in the life of the people, and in
some bands of age, with the growth of this industry the article have as objective to
demonstrate to some techniques used for the creation of models, using the Software
of modeling 3D Blender. The models bred in such a way can be inserted inside of a
programming environment 3D, how much used for the animation. The techniques
used for the creation of the model take in consideration factors that result in models
with good performance, mobility and interaction.

1. Introdução

Os jogos vêm se popularizando em escala mundial e os jogadores sempre estão


buscando jogos que lhes transmitam a sensação de estarem mais inseridos na realidade. Com
as técnicas de modelagem 3D isso se torna possível. Ambientes cada vez mais reais,
personagens com movimentos, expressões faciais e texturas cada vez mais apurados
realmente transportam o jogador para um universo virtual, e é isso que torna os jogos cada vez
mais populares e com legiões de jogadores (SENNA, 2007).
Com base nisto, foram realizados estudos sobre quais técnicas são utilizadas para a
criação desses modelos, e também como empregá-las dentro do software Blender utilizado
para a criação dos modelos.
Serão comentadas algumas técnicas, como Edge-loop, Base Mesh, e também
softwares que podem ser utilizados para a criação da Base. Será comentado algumas
características do Software Blender. Características que tornam o modelo utilizável para
ambientes de programação também serão tratadas.
O Modelo nesse com o conteúdo deste artigo também contará com a Armature,
estrutura que torna possível que o modelo realize movimentos, tanto em animações quanto em
futuras inclusões dentro de ambientes de programação. Essas inclusão também serão
comentadas.
78

2. Técnicas de modelagem 3D
A modelagem tridimensional ou modelagem 3D é uma subárea da computação gráfica que
tem como objetivo a criação de objetos em três dimensões.
Possivelmente o processo mais complexo e mais gratificante de modelagem em 3D
com certeza é a modelagem de um personagem. Construí-lo do começo ao fim, do rascunho à
animação, é um dos pontos máximos de qualquer modelador 3D (TABAJARA, 2006).
Infelizmente, não basta apenas saber desenhar e modelar um personagem bonito, para que
esse trabalho seja reconhecido e tenha chances de mercado. É preciso um pouco mais. É
preciso que sua modelagem, além de ser atrativa, seja funcional. Para que isso ocorra existem
várias técnicas, dentre elas: Edge-loop, Base-Mesh.

2.1. Técnica Edge-loop


O Edge-loop é uma técnica de manipulação de malhas de um modelo 3D, também conhecida
como, técnica de confecção de Personagens Profissionais. Sem o Edge-loops, um personagem
serve apenas como estátua, pois qualquer movimento que ele realize, a malha (vertex e edges)
irá se entrelaçar, gerando uma tensão que deformará a estrutura do personagem trazendo má
qualidade ao trabalho (ALVES, 2006).
Confeccionar Edge-loops duplica ou triplica o tempo de modelagem de um
personagem. Cada expressão de um rosto real é realizada pelas combinações dos músculos da
face. Alguns músculos têm maior influência nas expressões, outros menores. Então, a
primeira confecção de um rosto 3D de movimentação perfeita levou em consideração que
todos os polígonos de um rosto 3D devem acompanhar as linhas de fibras musculares de um
rosto real.

2.2. Base Mech


Essa técnica consiste em através da base Mesh importar uma imagem para servir de base para
a construção do modelo 3D desejado (ALVES, 2006). A Figura 3 apresenta um exemplo da
técnica.
Esta é uma das técnicas mais utilizada, porém deve-se tomar cuidado, pois o uso
somente dela ao invés de gerar um modelo que tenha a possibilidade de dinamismo, pode
gerar uma estátua, sem possibilidade de se movimentar. Por isso, combinada com está técnica
utiliza-se também a técnica Edge-loops, citada anteriormente (TABAJARA, 2006).

2.3 Softwares
Outra forma para construir modelos 3D é utilizando softwares que constituem partes
específicas do modelo e depois podem ser importado pelo Blender, ou outro software
utilizado para a modelagem 3D.
O software Make Human é um dos softwares que vem auxiliar na construção de
modelos humanóide. Ele pode ser usado como uma espécie de plugin do Blender, e é capaz de
gerar um modelo humanóide completo, possibilitando vários ajustem que podem contribuir e
muito para a construção do modelo final.
Ele é um software de fácil manipulação que permite regulagens como, peso, altura,
formatos de boca, nariz, olhos, testa, cabeça, mãos, ombros, massa muscular, etc. Porém os
79

modelos gerados por ele são a melhor opção para modelos que serão utilizados dentro de
ambientes de programação, pois os modelo gerados possuem muitos vértices, e isso torna o
personagem modelo lento e pouco funcional.

2.4 Blender
O Blender é uma ferramenta gráfica que permite a criação de conteúdo 3D e oferece
funcionalidade para modelagem, renderização, animação e pós-produção. Através de recursos
como o Game Engine, o Blender gerencia conteúdos interativos 3D com execução remota,
entre outros recursos, e ainda é uma ferramenta gratuita e de fácil acesso, com base nestes
atributos este foi o Software escolhido para a produção dos modelos.
Outros fatores dos softwares também tem influencia direta sobre os modelos criados
como, cores, iluminação, Radiosidade e Ray-tracing, e câmeras. E o uso de recursos como, o
uso de Framerates, quadros chaves e interpolações.

3. Modelagem dos personagens


Será realizada a modelagem de um personagens, um homem. através deste personagem, será
possível ter idéia das técnicas a ser abordada, podendo ser aplicadas a qualquer outro
personagem modelado posteriormente.
Os modelos gerados devem conter uma estrutura que possibilite a realização de
movimentos, os mais reais possíveis, levando em consideração os requisitos funcionais dos
computadores, para que os modelos fiquem mais leves a ágeis. Serão criados sem as roupas,
pois com a modelagem das peças de vestuários serão utilizados uma maior quantidade de
polígonos, deixando o modelo mais pesado computacionalmente.
A técnica Low-Poly propõe o uso de poucos polígonos na modelagem 3D. Os
polígonos geralmente são representados através de triângulos. Porém, para criar objetos com
um alto grau de definição se exige um grande número de polígonos, mas muitas vezes isso
não é possível, então se opta pelo corte de alguns polígonos, sempre tomando cuidado para a
imagem não ser prejudicada. Para evitar a perca de detalhes essa técnica geralmente não
abrange a cabeça do modelo, pois com baixo número de polígonos, detalhes pequenos como
os dos olhos passariam despercebidos.
A modelagem inicia-se pelo rosto do personagem, mais precisamente, pela forma da
boca, seguindo para o seu pescoço, conjuntamente com os ombros e por último o tronco e as
pernas. A técnica utilizada para a modelagem dos personagens foi a Edge Loop. Devido a sua
funcionalidade, e por gerar modelos com baixo números Polígonos, levando em consideração
a técnica Low-Poly.

3.1. Modelagem da cabeça e da Face


Como já mencionado nesse artigo, a técnica Edge Loop trabalha manipulando as malhas, e a
modelagem de todo o corpo do personagem trabalha-rá em torno disto. Alogando,
modificando, acrescentando novos vértices.
Primeiro esboça-se uma boca inserindo vértices e os moldando, não existe um padrão
80

para isso, depende do modelo que se deseja criar. Depois disso começa-se a dar forma a parte
da frente do rosto, alongando esses vértices, sempre buscando dar alguma forma a eles. A
seqüência de imagens da figura 1 demonstra esses passos.

Figura 1. Seqüência de criação da boca

Para a modelagem dos olhos, foram criados dois espaços onde os olhos são
encaixados, assim, moldam-se as malhas de vértices, criando esses espaços. Este tipo de olho,
colocado no espaço criado entre os vértices, chama-se olho socket.
Um detalhe importante é que o olho deve ser separado da face, para que possa rodar
livremente. Isto não será possível se juntar os vértices da malha existente. Em vez disso, vai-
se acrescentar um outro objeto a malha. O olho, com isso o Blender tratará o malha existene
como um objeto, e os olhos como outro. O que poderá dar ações diferentes para cada um
deles.
Para criar o objeto que será o olho deve-se adicionar o UV Sphere. A partir deste
ponto é solicitado o fornecimento do número de segmentos e anéis. Para este caso foram
utilizados 8 anéis.
Após isso, adiciona uma malha automaticamente e o modo muda para o Modo Edição.
Volta-se então para Object Mode, movendo-se o olho para o lugar desejado. Usando os botões
G e S pode-se aperfeiçoar o olho.
Após isso, usa-se a técnica Set Smooth e adiciona-se um modificador Subsurf para
fazer o olho ficar com uma aparecia mais suave, sem tantos vértices.
Após o olho já estar posicionado no local desejado, para poupar tempo pode-se
duplicá-lo, existem algumas maneiras de fazer isso, uma delas é o chamado espelhamento,
que faz algo semelhante a um espelho, algo simetricamente idêntico ao objeto original (no
caso o olho), porém neste caso não seria satisfatório se ele fosse espelhado diretamente, pois
se precisa manter a separação entre a malha do olho e a da face, então para isso é necessário
primeiro isolar o objeto olho, e espelha-lo separado do restante da malha
Como já comentado anteriormente, os olhos terão movimentos separados dos do rosto,
para isso ser possível é necessário colocar os olhos em uma camada diferente da camada onde
o rosto estiver. Para isso se tem a matriz de botões na parte inferior da janela 3D (botões
Layer), ou as teclas numéricas na linha superior do teclado. Os olhos serão movidos para
Camada 2.
A próxima etapa na criação desse personagem foi o preenchimento das lacunas dos
olhos, criando-se as pálpebras. Para isso, move-se os vértices ao redor dos olhos chegando o
mais perto possível dos olhos, até que não haja nenhuma lacuna, entre o olho e o rosto
Para concluir a modelagem da cabeça foram necessários vários ajustes, sempre girando em
81

torno da localização dos vértices e o número dos mesmos. Para isso foi aumentado o tamanho
dos vértices, fazendo com que a cabeça ficasse com uma forma oval. Desta forma selecionam-
se alguns vértices e vai expandindo-os para trás. Por fim basta fechar os buracos restantes,
sempre buscando alongar 4 vértices por vez, para manter uma malha mais firme.
Para aprimorar a boca se arrasta os vértices que formam os lábios para traz formando
um buraco em direção ao interior da boca. Faz-se isso até que toda a boca receba um
alongamento de vértices, e isso forme a cavidade Oral. Após isso, foram criados alguns
vértices com o objetivo de dar mais volume aos lábios, e por fim, foi realizado um aumento de
vértices, até o fechamento da boca. Com a criação desses vértices, foi possível fazer uma
distinção entre face, lábios e boca. Sendo a partir deste ponto necessário basicamente pegar os
vértices e move-los. Ao final o modelo deve estar parecido com o da figura 2.

Figura 2. Rosto Modelado

3.2 Modelagem do pescoço, ombros, membros e tronco.


Partindo da cabeça, foram criados o pescoço e os ombros, para isso foram escolhidos alguns
vértices e alongas formando primeiramente o pescoço. Para formar os ombros não foi possível
utilizarmos apenas esse número de véstices, por isso, nessa etapa geralmente são
acrescentados novos vértices. Para isso foi utilizado o Loop Cut, adicionando-se novos
vértices.
Foram então deslocados três vértices, alongado-os para formar o pescoço para baixo,
como na extruturação do peito na frente e atrás as costas.
O mesmo processo foi utilizado para formar os ombros. Também foi construída uma
estrutura onde os braços posteriormente serão encaixados. Assim, continuou-se alongando os
vértices, e criando novos vértices até formar uma estrutura de malhas, que formam as costas e
o peito, toda a caixa toraxica.
Em seguida, foram feitos os braços, adicionando-se anéis de vértices. Primeiramente
seleciona-se o anel de vértices, mostrados na raiz do braço, desloca-se os vértices, movendo-
os para a direita, aumentando-os um pouco. Faz-se isso mais algumas vezes, até que o braço
82

ganhe forma, ao longo do braço a grossura dos anéis deve ser alterada, para que ele fique o
mais parecido possível com braços humanos.
Levando em consideração que este modelo, por ser voltado a jogos, e não poder conter
um número elevado de polígonos justamente para se tornar mais leve, a mão não foi muito
detalhada. Para isso basta alongar mais alguns anéis de vértices, um pouco mais grossa, para
se diferenciar do restante do braço. A mão possui apenas um dedo, o polegar.
A modelagem do tronco, segue os mesmo princípios apresentados anteriormente,
bastando realizar a extrusão dos vértices, sendo que no final do tronco, foi necessário criar um
espaço para as pernas. Fazendo com que posteriormente elas possam ser encaixadas. E e o
espaço entre as duas penas deve ser fechado.
Após isso, foi modelada a raiz da perna, tornando-a um pouco mais circular. A
exteriorização das pernas seguiu o mesmo princípio da criação dos braços.
Depois disto bastou selecionar todos os vértices e moldar, para que ficassem com
formas mais humanas. Tentando deixar o maior número de vértices possíveis no local onde
formam os joelhos, assim facilitando posteriormente, a etapa de animação.
Por fim os pés foram criados, selecionando-se alguns vértides da frente do tornozelo e
aumentado-os, fazendo todo o contorno do pé e depois preenchendo as laterais com a criação
de novos vértices. Ao final desta etapa da modelagem o modelo pode ser visto na figura 3.

Figura 3. Corpo Modelado

3.4. Criação do Esqueleto


Para animar o personagem, é impossível mover vértice por vértice, por isso, no
83

Blender e em algumas outras ferramentas de modelagem usa-se a Armature, que serve como
uma base, que funciona como um esqueleto, fazendo com que o objeto se mova, neste caso o
personagem.
Uma armadura deve ser composta de muitos dos ossos, Cada osso pode ter alguns
vértices atribuídos. Assim, quando um osso se move, apenas os vértices atribuídos a ele se
movem. A meta é estabelecer os ossos de modo que ao mover um osso, haja um suave
movimentação do osso vizinho, para se tornar um movimento mais real. Nesta etapa foi
utilizado o Mirror modifier, para facilitar o trabalho.
Primeiramente o Mirror modifier habilitado, feito isso, foi acrescentado o esqueleto ou
armadura. Para tirar proveito das ferramentas de modelagem simétricas, fez-se com que o
centro da armadura ficasse no o centro do personagem.
Para incluir uma armadura, deve-se selecionar a opção Add Armadure Object. É
adicionada a armadura, a qual é composta por um único osso, basta a partir deste primeiro
osso, adicionar os demais, sendo a coluna formada.
Com um osso selecionado, ainda é possível alterar o nome do osso na opção Modificar
botões do painel armadura dos Ossos (Armature Bones). Esta é uma etapa importando, onde
foi selecionado cada um dos ossos da coluna vertebral nomeados. Nesses casos, os nomes
foram a partir das bases, spine1, spine2, spine3, spine4, spine5, pescoço e cabeça. Para se
criar os ossos do braço foi selecionada a ponta do Spine4, e clica-se Shift+E para criar um
novo osso. Com a ponta do ombro ainda selecionado, sendo os mesmo passos seguidos até
colocar todos os ossos no braço.
Após isso, foi realizado o mesmo procedimento para criação dos ossos das pernas e
pés. Primeiramente foi criado os ossos que unem as duas pernas com o restante do corpo,
fazendo com que esses ossos funcionem como eixo o personagem.
Depois de criados, os ossos foram nomeados, levando em consideração os mesmos
padrões dos ossos do braço. Após a criação de todos os ossos, bastou a realização de alguns
ajustes tais como tamanho e posicionamento, melhorando o esqueleto do personagem. Os
ossos criados sofrem uma hierarquia, pois um osso de hierarquia superior, faz com que todos
os seus inferiores se movimentem. Esta hierarquia deve ser configurada, informando quem
será o pai e o filho. Os ossos neste etapa são identificados como Bone.
Assim, o bone pai tem controle sobre o bone abaixo dele na hierarquia, se move o
bone pai, o bone filho se move junto, mas se mover o bone filho o bone que está acima dele
na hierarquia não se move junto.Ao final desse processo, o modelo deve estar com a
Armadura completa e os ossos nomeador, com na figura 4.
84

Figura 4. Momeando os óssos

Após a realização desse processo, foram realizados alguns ajustes de Iluminação,


renderização, escolha da Câmera e por fim o personagem é finalizado com alguns retoques na
sua aparencia.

4. Animação do personagem
Nessa etapa foi criada uma série de movimentos, utilizando o esqueleto montado e
apresentado na etapa anterior. No Action Editor que foram criadas as ações faciais,
movimentos de cabeça, braços etc.
Será apresentada aqui uma animação, somente para explicar alguns princípios da
animação, sendo os mesmos repetidos posteriormente. Para isso é feito um movimento com o
braço do modelo. Deve-se deixar a opção o Auto IK off, para que possa-se mexer o osso do
braço.
Com os ossos na posição, pode-se acrescentar as chaves. Uma chave descreve a
orientação de um osso: a sua localização, rotação, e tamanho. De modo geral, só se deseja
adicionar as chaves para os ossos que realmente fazem algum movimento.
Na janela de ação existem várias linhas, ou canais, e cada uma tem um nome que
corresponde a um osso na armadura selecionada. Cada canal está ligado ao osso. Quando se
seleciona um osso, o canal correspondente é selecionado, o mesmo acontece se um canal é
selecionado, o osso correspondente também é selecionado.
85

Figura 5. Quadros Chaves

Na Figura 5 pode-se notar alguns pontos amarelos, estas são as chaves da animação. Eles
estão alinhados ao longo de uma linha verde, que indica que o quadro de animação.
Atualmente se está no frame 3, sendo todas as chaves acrescentadas neste frame.É através
desses frames que são feitas as animações.
Passando para o frame 5 e habilitando a opção auto keyframing o Blender insere
automaticamente um novo quadro chave caso seja movido um osso.
Na figura 6 pode ser observado um quadro chave, sendo que foi movimentado o osso
lower_arm.l. As chaves velhas então desmarcadas em branco e as novas chaves são
selecionadas em amarelo.

Figura 6. Quadro Chave sendo movido

Será apresentado agora uma animação onde o personagem dará alguns passos. Para isso, foi
adicionada uma nova ação, sendo o nome desta nova ação Walkcycle. Moveu-se então o
spine1 um poço no eixo Z e dobrou-se um pouco as pernas.
Com base nos estudos sobre animação realizados no capítulo 2, onde foram vistos
bibliografias sobre movimento humano e animal, tentou-se mover, os ossos que de forma a
simular uma caminhada verdadeira. Como em uma caminhada humana os braços também
precisam ser animados. Nesse momento é importante mudar várias vezes a posição da câmera,
buscando se alcançar um grau de realidade maior
A cada movimento criado, é importante que se crie o ponto Chave no Action Editor,
especificando também, o número de frames entre esses pontos. Após marcar todos os pontos
chaves, e ajustar os frames, segue mais algumas instruções.
Um movimento de caminhada perfeito, pode usar vários frames e ser bem demorado,
pois quanto mais frames, maior o movimento do osso, e mais próximo da perfeição. Neste
modelo a parte da caminhada possui 21 frames.
86

4.1. Animando a face


Assim como foram usadas chaves para descrever as posições de um osso, os Shape Kesys
descrevem a posição dos vértices em uma animação. Pois é importante observar que a face
não é formada de ossos, e sim vértices.
Os Shape keys são mais utilizados para expressões faciais. Foram criado aqui, algumas
Shapes Keys básicas como: abrir a boca, sobrancelhas pra cima, sobrancelhas pra baixo e
fechar os olhos. Com essas Shapes Keys criadas é possível misturar expressões faciais em
uma animação, sincronizando ainda os lábios a um arquivo de som.
Adiciona-se uma Shape Keys, começou-se a modelagem pela primeira forma chamada
open. O Shape Keys funciona da mesma maneira que os Keys utilizados para a
animação utilizando ossos, porém os frames são formados por movimento das vértices.
Na figura 7 pode-se observar algumas animações de abertura de boca, e movimentação
de pálpebras.

Figura 7. Seqüência de animação do rosto

5. Inclusão do personagem no Java 3D


Para a realização desta etapa foi utilizada a ferramenta Java 3D, e para isso foi necessário um
estudo da estrutura do programa Java 3D para a inserção dos objetos.
O Java 3D oferece um modelo de programação em alto nível, isso permite ao
programador conseguir uma abstração maior em termos de código e, por consequência, uma
maior facilidade de codificar uma determinada idéia. Tudo isso, deve-se ao fato do Java 3D
utilizar o conceito de Grafo de Cena.
Grafo de cena é uma estrutura hierárquica que organiza objetos que compõem e
definem uma cena, preservando as relações espaciais existentes entre esses obejtos, tais
objetos referem-se tanto ás geometrias e suas propriedades, como às infomações necessárias
para que a cena seja renderizada de um ponto particular de visão.
No Java 3D, o grafo de cena é encapsulado pela Classe VirtualUniverse, que define
um universo virtual. Os nós que compõem a cena derivam da classe Node e possuem apenas
um pai. Um grafo de cena contém também objetos derivados da classe Group que encapsula
uma coleção de filhos de objetos do tipo Node. Os nós que compõem o grafo de cena podem
87

representar geometrias, sons, luzes, posições, orientações e aparência de objetos visuais.


Além dos nós, o grafo de cena possui também os arcos que representam a relação entre
os nós, que nada mais são do que instâncias de classe Java 3D.
Cada cena gráfica deve possuir um único universo virtual, representado por um objeto
tipo VirtualUniverse. É o universo virtual que o desenvolvedor irá preencher com geometrias,
luzes e outros elementos. O objeto locale serve para definir uma área geográfica no universo
virtual que por default é centrada na coordenada 3D (0, 0, 0).
Um grafo de cena pode conter muitos subgrafos, porém, por mais simples que seja o
programa, terá que se criar no mínimo dois subgrafos: o primeiro, denominado de subgrafo de
contexto, conterá os objetos que fazem parte da cena virtual (geometrias, luzes, cenário, etc.)
e o outro denominado subgrafo de visualização, possuirá todos os objetos necessários para
criar, posicionar, direcionar e movimentar a câmera virtual.
O Java 3D não possui um formato de arquivo nativo. Sendo assim, um Loader lê um
arquivo texto ou binário e o converte em uma estrutura de grafo de cena para que assim o Java
3D possa renderizá-lo. Dentre os formatos de Arquivos que podem ser importados estão:
Wavefront (.obj), 3D Studio Max (.3ds) e VRML (.wrl).
Basicamente a tarefa fundamental de um Loader é ler um arquivo que descreve uma
cena, contendo um ou mais objetos, e fazer com que esta seja entendida pelo Java 3D. Para
isso um Loader cria um grafo de cena que representa o conteúdo do arquivo.
O pacote Loader conta com duas interfaces:
 Loader: Usada para ler, analisar e criar um grafo de cena Java 3D do conteúdo
do arquivo, de acordo com o formato especificado.
 Scene: Usado para armazenar as informações dos elementos do grafo de cena
criado pelo Loader possibilitando que tais informações sejam recuperadas.
A interface Loader permite carregar uma cena de um arquivo armazenado localmente,
de uma URL ou ainda de um objeto Reader, através do uso alguns métodos, e a interface
Scene permite que se obter informações sobre a cena carregada.
Para carregar um arquivo de um formato específico geralmente devemos seguir os
seguintos passos um deles é Encontrar um Loader para o formato de arquivo que se quer
carregar, caso ele já não esteja no pacote com.sun.j3d.loaders; como os Loaders utilizados
não estavam no pacote eles foram adicionados, ( Loader vrml97.jar e o Loader
StarfireExt.jar), Após isso o modelo foi inserido dentro de um cenário 3D.
Na figura 8 pode-se ver o modelo inserido dentro do cenário 3D.
88

Figura 8. Modelo dentro do Cenário 3D.

6. Considerações Finais
Para realização deste trabalho foram estudadas várias técnicas de modelagem, e também
foram realizados estudos sobre a ferramenta Blender e outras ferramentas que poderiam ser
utilizadas para contribuir com o trabalho.
Os objetivos específicos foram atingidos, as melhores técnicas foram levantadas, o
modelo foi desenvolvido utilizando uma delas, no caso Edge Loop. A técnica foi escolhida,
devido ao número de vértices que ela utiliza o que possibilita a modelagem de personagens
que podem ser utilizados para jogos.
No capítulo de animação, a inclusão do personagem desenvolvido tratando da inclusão
do mesmo em um ambiente de programação, no caso, o Java 3D, pois se verificou que a
maioria dos personagens modelados são utilizados para jogos, era de grande valia abordar
esse assunto.

7. Referências Bibliográficas

ALVES, A. W. Modelagem e animação com blender. São Paulo, v.2. 2006.

BICHO, A.L.; SILVEIRA JR, L.G.; CRUZ, A.J.A.; RAPOSO, A.B. Programação
Gráfica 3D com OpenGL, Open Inventor e Java 3D. Revista Eletrônica de Iniciação
Científica (REIC). Vol. II, n. I, Março 2002. SBC, Brasil. Disponível em: <
http://www.tecgraf.puc-rio.br/~abraposo/pubs/reic2002/ProgramacaoGrafica.pdf>.
Acesso em: 16 junho 2008.

BLENDER. Blender.org. Site de desenvolvimento de motores de jogos 3D.


Disponível em:<http://www.blender.org/>. Acessado em: 01 ago. 2007.
89

SBC. Jogos e educação. Computação Brasil, Bento Gonçalves, ed. 0327, p. 19,
jun.jul.ago. 2007.

SENNA, O. A arte interativa. Computação Brasil, Bento Gonçalves, ed. 0327, p. 16,
jun.jul.ago. 2007.

TABAJARA, Raul. Edge- Loop: Conceito e prática. 3D Arts - Tutoriais. Disponível


em:< http://www.3darts.com.br/tutoriais/edge_loop.php>. Acesso em: 20 de março de
2008.

Você também pode gostar