You are on page 1of 5

TUTORIAL

Blender

Construo de objetos tridimensionais para jogos com o Blender

Cenograa digital
Quando o assunto so jogos de computador, lembramos automaticamente
de cenrios recheados de detalhes para atrair o jogador. O problema o
tempo necessrio para constru-los, bem como os softwares disponveis no
mercado. O Blender representa uma excelente alternativa para esses casos.

POR DIEGO TUMELERO, VINCIUS MICHELIN E JACQUES DULIO BRANCHER

ara a construo desses cenrios pode-se citar, entre muitos


outros ttulos do mercado, os softwares Maya e 3D Studio Max. Ambos
so bastante conhecidos usados entre
os desenvolvedores, no apenas de
jogos de computador, mas de qualquer
tipo de aplicao que envolva grcos e
movimento. O que impede uma utilizao maior dos dois seu custo elevado
e tambm sua complexidade, o que leva
muitos usurios leigos a rejeit-los.
Uma alternativa para aqueles que
querem iniciar-se na arte de desenvolvimento de cenrios tridimensionais e
jogos de computador trabalhar com o
Blender, cujas principais caractersticas
[5] vm resumidas a seguir:

GLOSSRIO
VRML, acrnimo ou abreviao para Virtual Reality Modelling Language, uma
linguagem aberta e multi-plataforma para
descrio de cenas tridimensionais, utilizada
para criar vistas de imagens em trs dimenses que se modicam conforme muda o
ngulo de viso do observador, sua posio
e a iluminao do ambiente. Pode ser utilizada para criar um ambiente ou um mundo
que parea real quando um movimento
realizado nele. Esses mundos 3D podem
conter objetos que faam referncia a documentos, outros objetos ou outros ambientes
tridimensionais. O VRML um subconjunto
do formato de arquivo Inventor, da Silicon
Graphics. Foi criado por Mark Pesce e Tony
Parisi em 1994, sendo o padro ISO para
representar objetos 3D na web.

Sistema integrado de ferramentas


essenciais para a criao de contedo 3D, incluindo modelagem,
animao, renderizao, ps-produo de vdeo e criao de jogos;
Executvel pequeno, o que facilita
a distribuio;
Multi-plataforma, com uma interface grca baseada em OpenGL,
o que garante a portabilidade
necessria entre as diferentes plataformas: Windows, Linux, OSX,
FreeBSD, Irix e Sun;
Alta qualidade na arquitetura 3D,
possibilitando uma criao eficiente e rpida de quaisquer tipos
de cenrios;
Suporte grtis via Internet [6];
Salva objetos no formato VRML 2.0.

Neste artigo falaremos sobre os


comandos bsicos do software e algumas de suas decincias. Veremos tambm como feita, na prtica, a criao
de objetos e cenrios tridimensionais e,
para encerrar, descreveremos o Aitem,
um jogo tridimensional de computador
didtico, desenvolvido para ensinar
matemtica a alunos de 5 a 8 sries,
para o qual se criaram objetos.

Comandos bsicos

Os procedimentos para modelar objetos


tridimensionais no Blender so basicamente os mesmos de qualquer outro
programa que execute esse tipo de

58

Outubro 2004

www.linuxmagazine.com.br

tarefa. O ambiente de modelagem consiste em 3 eixos, X, Y e Z. No Blender, o


processo de modelagem relativamente
fcil, uma vez que, apesar de no possuir uma interface muito amigvel, o
programa utiliza muitos atalhos de
teclado, o que confere agilidade ao trabalho. A gura 1 mostra o ambiente de
desenvolvimento do Blender:
A interface do Blender, ou ambiente
de desenvolvimento do Blender est
dividido em duas partes principais:
Na parte inferior da tela esto as
ferramentas de trabalho e algumas opes de con gurao, tais
como: resoluo do objeto renderizado, informaes sobre materiais
e texturas, opes de luminosidade,
transparncias, colises e cores,
entre outros. Os menus da parte
inferior so modicados conforme
a seleo efetuada, ou seja, se o
objeto selecionado uma lmpada,
as opes sero de edio de luz e
assim sucessivamente.
Na parte superior, ca o ambiente
de trabalho, onde o usurio modela
e visualiza os objetos.

O Blender possui vrios comandos,


que permitem desde a insero de
objetos at sua edio. Tambm possui comandos que inserem metaballs,
objetos prontos que no podem ser editados. Alguns comandos que utilizam

Blender

Figura 1: O ambiente de desenvolvimento do Blender.

os recursos de esqueleto e skin (aplicao de pele) para criao de personagens tambm esto disponveis. Os
principais comandos para a criao
de objetos esto listados na Tabela 1.
Observe o comando Icosphere, que permite a gerao de esferas multifacetadas,
com subdivises de 12, 24, 162, 642 ou
2562 vrtices.
H objetos primitivos que podem ser
modelados com nmeros diferentes de
vrtices, que podem variar de 3 at 100:
A gura 2, mostra os comandos Cube,
Tube e Cone, exemplicando o funcionamento dos objetos primitivos que so
a base de tudo no Blender.
O comando utilizado para se inserir
uma fonte de luz (lmpada) o Lamp,
que pode ser de diversos tipos (veja
Tabela 1). A lmpada mais utilizada
a do tipo lamp, que simula uma lmpada comum.
A Tabela 1 tambm traz os comandos mais utilizados para se modelar
objetos e cenrios em 3 dimenses.
Esses comandos podem ser aplicados
em qualquer objeto primitivo. Entre os
citados, o Amature e o Lattice tm uso
muito freqente, uma vez que so utilizados na criao de personagens.

Decincias do Blender

O Blender ainda apresenta algumas


decincias no que tange modelagem
arquitetnica, segundo algumas crticas
de usurios do Blender Brasil [2]. Na
opinio deles, uma das maiores decincias do software no possuir uma
unidade de medida, o que gera uma
falta de preciso para projetos arquite-

TUTORIAL

Figura 2: Objetos primitivos.

Tabela 1 Comandos do Blender


Primitivos
Comando

Funo

Plane

insere um plano (quadrado)

Cube

insere um cubo

Icosphere

insere uma esfera

Primitivas com mltiplos vrtces


Comando

Funo

Uvsphere

insere uma esfera de raios

Circle

insere um crculo

Cylindre

insere um cilindro

Tube

insere um tubo

Cone

insere um cone

Iluminao
Comando

Funo

lamp

lmpada que ilumina em todas as direes

area

lmpada que ilumina em uma s rea com forte intensidade

spot

lmpada que ilumina em uma s direo formando um cone

sun

lmpada que ilumina em uma direo com forte intensidade

hemi

lmpada de iluminao fosca

Modelagem 3D
Comando

Funo

Amature

usado para fazer esqueletos

Lattice

usado para abstrair conjuntos de vrtices e deformar malhas

extrude

gera uma nova diviso dos vrtices selecionados, para ser editados em um
novo sentido e tamanho

scale

altera a escala (tamanho) do objeto

rotate

rotaciona o objeto em qualquer direo

move

move o objeto para qualquer lugar da tela

mirror

gera uma imagem espelhada do objeto selecionado

spin

faz com que o objeto selecionado rotacione, fazendo extrudes no ngulo


denido pelo usurio e com o centro denido pela posio do cursor

duplicate

gera uma cpia idntica do objeto selecionado

ll

cria uma aresta entre dois vrtices

subdivide

gera uma subdiviso entre os vrtices selecionados

delete

exclui o objeto selecionado

www.linuxmagazine.com.br

Outubro 2004

59

TUTORIAL

Blender

Figura 3: Foto do banco a ser modelado.

Figura 4: A base do banco.

tnicos. Tambm no nada fcil alinhar objetos ou mesmo arestas a outras


arestas, o que diculta muito esse tipo
de trabalho. Apesar disso, o sistema foi
utilizado para a pr-visualizao dos
efeitos do lme Homem Aranha 2.
Mesmo outros programas de modelagem dispem de unidades de medida,
mas com limitaes que eventualmente
dicultam um trabalho mais complexo.
Por isso, comum a utilizao de softwares CAD para a modelagem do esqueleto do projeto, para ento realizar a arte
nal nos softwares de modelagem 3D.
As maiores diculdades encontradas
no desenvolvimento de cenrios para
jogos em Java esto relacionadas com
a exportao dos objetos para VRML
2.0 nativa. Entretanto, a exportao
para esse formato ainda problemtica:
somente na verso 2.33a do Blender
surgiu um script em Python que permite faz-lo, embora ainda sem a qualidade necessria (ao exportar os objetos,

algumas de suas faces desaparecem).


Quanto ao VRML 1.0, todas as verses
do Blender exportam para esse formato
sem problemas.

Criao de um objeto
tridimensional

O processo de modelagem 3D no Blender se divide em duas grandes etapas.


Na primeira so construdos os objetos
primitivos, que serviro de base para
o cenrio, compostos basicamente de
arestas, vrtices e malhas. Depois vem
a edio desses objetos, transformandoos no que desejamos construir, atravs
de comandos como extrude, spin etc.
O Blender possui vrios recursos
de modelagem. Um dos pontos mais
importantes do processo a utilizao
de malhas para a aplicao de efeitos
com o comando Lattice, que permite a
criao de ondas e partculas estticas e
dinmicas, alm de curvas de deformao, que do mais realismo aos objetos.

Figura 5: Banco com assento.

Figura 6: Banco completamente renderizado.

60

Outubro 2004

O tempo que um objeto leva para ser


modelado em trs dimenses varivel
e depende basicamente de dois quesitos:
o primeiro deles o tipo de objeto que
est sendo modelado, sua complexidade
e a quantidade de objetos secundrios
que pertencem ao cenrio. O segundo,
fundamental, justamente o conhecimento que o designer tem do software
utilizado para a criao do ambiente.
Para apresentar esse processo, realizaremos a modelagem do banco mostrado na gura 3.
No h uma receita de bolo para a
modelagem de objetos tridimensionais.
Cada objeto requer um estudo detalhado
de suas formas, que servir para avaliar
quantas e quais sero as primitivas que
faro parte da sua estrutura inicial.
A gura 4 mostra a base do banco em
modo wireframe, uma representao
do objeto com linhas e pontos. O objeto
criado utilizando cubos e operaes
como extrude e duplicate.

www.linuxmagazine.com.br

Blender

Figura 7: Foto da praa a ser modelada.

Aps a construo da base, desenvolve-se, conforme mostra a gura 5,


em modo slido (i.e., que mostra as
malhas do objeto), o assento : tambm
com a utilizao de cubos, movendo-se
apenas alguns vrtices.
Na gura 6 vemos o banco completamente renderizado, com o encosto
construdo atravs de um crculo manipulado com spin e extrude.
O processo de renderizao pode ser
feito de duas maneiras: diretamente no
Blender ou atravs de plugins especcos para essa nalidade. Caso o processo seja feito diretamente no software,
existem algumas restries. A mais
importante delas a qualidade nal da
renderizao, que no to boa quanto
se poderia esperar desse tipo de procedimento. Caso o usurio deseje renderizar o objeto ou cena usando plugins,
possvel escolher o POV-Ray [7], o
YafRay [8], e vrias outras ferramentas
de renderizao.

Figura 8: Viso do ambiente em wireframe.

TUTORIAL

Figura 10: Foto da praa noite.

Apesar da limitao de qualidade do


produto nal, o renderizador nativo do
Blender rpido e possui recursos de
radiosidade. Ele permite tambm a criao de clusters (diversos computadores
em uma rede), funcionando como um
nico servidor de renderizao.

Criao de cenrios
tridimensionais

Para a modelagem de um cenrio tridimensional, segue-se o mesmo processo de criao de objetos mostrado
anteriormente. A diferena neste caso
que h um grande nmero de objetos a serem modelados. Inicialmente
obtm-se vrias fotos do ambiente, para
se ter uma viso geral do lugar e evitar
erros comuns, tais como a falta de um
ou outro objeto ou diferenas entre as
cores reais e as da modelagem. A gura
7 apresenta o cenrio escolhido. Esse
ambiente apresenta uma srie de objetos com caractersticas detalhadas.

Para criar a praa conforme mostrada na gura 7, modelou-se inicialmente o cho e, logo aps, os prdios,
para se obter uma percepo das dimenses do ambiente. necessrio levar em
considerao a proporo entre os objetos, j que o Blender no dispe de uma
unidade de medida (e.g.: metro) que
fornea uma noo do tamanho deles.
O segundo passo modelar os objetos
separadamente: chafariz, vasos, plantas, portas, janelas, bancos, etc. Por
m, inserem-se esses objetos no modelo
principal, faz-se a texturizao [4], a
iluminao e a renderizao da imagem
nal. A gura 8 mostra a praa com
todos os objetos em modo wireframe.
A gura 9 ilustra a mesma imagem da
gura 8, mas em modo slido. Mostramos as duas guras com o propsito de
dar uma noo do ambiente de modelagem do Blender.
A gura 10 mostra uma foto da praa
tirada noite.

Figura 9: Viso do ambiente em modo slido.

www.linuxmagazine.com.br

Outubro 2004

61

TUTORIAL

Blender

A gura 11 mostra a praa modelada e


com iluminao adequada. Foram utilizadas luzes do tipo Spot, que conferem
realismo praa. Cada luminria contm um Spot com iluminao amarela.
A renderizao do cenrio foi feita para
se estudar melhor os efeitos de transparncia e aplicao de texturas, de modo
que o cenrio possa ser inserido da
melhor forma possvel no jogo.
Na modelagem das paredes, cho,
arbustos e chafariz, e em alguns outros
objetos, foram utilizadas texturas que,
alm de deixar a cena mais realista, eliminam centenas de vrtices que certamente prejudicariam a performance do
nosso jogo.

Uso de objetos do Blender


em jogos

Figura 11: Renderizao nal do ambiente.

Figura 12: Ambiente do Aitem.

Agradecimentos
O trabalho que resultou neste artigo foi
realizado com o apoio do CNPq, entidade
do Governo Brasileiro voltada ao desenvolvimento cientco e tecnolgico. Parte
integrante do projeto AITEM/EAD : CNPq n
401.193/2003-9.
Ao pessoal dos sites Blender Brasil [2] e
3D4All [3] que nos esclareceram dvidas
atravs de seus tutoriais e de seus fruns.

SOBRE OS AUTORES

Os trs autores desenvolveram este trabalho


no Departamento de Engenharias e Cincia
da Computao da Universidade Regional
Integrada do Alto Uruguai e das Misses :
Campus de Erechim. E-mail para contato:
aitem@uricer.edu.br

INFO
[1] Blender Site ocial:
http://www.blender.org/
[2] Blender Brasil:
http://www.blender.com.br/
[3] 3D for All Arte digital:
http://www.3d4all.org/
[4] Disco de texturas do Blender:
http://www.blender3d.org/e-shop/product_info.php?products_id=47
[5] http://www.blender.com.br/portugues/
modules.php?name=News&le=article
&sid=161
[6] http://www.blender3d.org/
[7] POV-Ray: http://www.povray.org/
[8] YafRay: http://www.yafray.org/

62

Outubro 2004

www.linuxmagazine.com.br

O cenrio apresentado na gura 11 possui um grau de realismo bastante elevado, por conta do detalhamento dos
objetos que pertencem ao cenrio, mas
sua utilizao em jogos invivel em
termos prticos, devido elevada quantidade de vrtices.
Como o Blender ainda no exporta
para VRML 2.0 com a qualidade desejada, pode-se utilizar um conversor
externo de VRML 1.0 para VRML 2.0,
de modo que no haja perda de preciso
ou qualidade durante o processo.
importante salientar que todos os
objetos do cenrio foram utilizados para
a construo do jogo Aitem (acrnimo
para Ambiente Interativo Temtico
para Apoio ao Ensino de Matemtica),
mostrado na gura 12.
O projeto Aitem visa ensinar matemtica a alunos do Ensino Fundamental,
recriando virtualmente o ambiente de
uma escola, com suas salas, refeitrio,
ptio, saguo, alunos, etc.

Concluses

A utilizao do Blender no processo de


modelagem de ambientes tridimensionais bastante rpida e fcil. Aps o
impacto inicial, por conta da sua interface at certo ponto pouco intuitiva, o
desenvolvimento do trabalho acaba se
tornando prazeroso.
O Blender possui um engine nativo
(o chamado GameKit) que pode ser
utilizado para a construo de jogos e
ambientes virtuais interativos, mas sua
descrio foge do escopo deste artigo.

You might also like