Escolar Documentos
Profissional Documentos
Cultura Documentos
LAVRAS
MINAS GERAIS BRASIL
2007
rea de Concentrao:
Informtica na Educao
Orientador / Co-orientadora:
Jos Monserrat Neto
Ila Maria Silva de Souza
LAVRAS
MINAS GERAIS BRASIL
2007
Ficha Catalogrfica
Cipriani, Otvio Nery
Construindo um Jogo Para Uso na Educao Matemtica / Otvio Nery Cipriani.
Lavras Minas Gerais, 2007. 53p : il.
Monografia de Graduao Universidade Federal de Lavras. Departamento de Cincia da Computao.
1. Introduo. 2. Referencial Terico. 3. Metodologia. 4. Resultados e Discusso. 5.
Concluso. I. CIPRIANI, O. N. II. Universidade Federal de Lavras. III. Ttulo.
_______________________________________
Cristiano Leite de Castro
_______________________________________
Ahmed Ali Abdalla Esmin
_______________________________________
Jos Monserrat Neto
(Orientador)
_______________________________________
Ila Maria Silva de Souza
(Co-orientadora)
LAVRAS
MINAS GERAIS BRASIL
Agradecimentos
Agradeo acima de tudo aos meus pais, que sempre me apoiaram e acreditaram em mim
durante toda a minha vida.
Agradeo ao meu orientador, Professor Jos Monserrat Neto, que me auxiliou no somente no
decorrer do desenvolvimento do presente trabalho, como durante toda a minha graduao.
Agradeo Professora Ila Maria Silva de Souza do Departamento de Educao da
Universidade Federal de Lavras, que me orientou e colaborou na realizao de um trabalho
consistente em relao aos aspectos cientficos e didticos.
Agradeo aos meus amigos pelas alegrias que compartilhamos ao longo destes quatro anos, em
especial ao Rubens pela contribuio dada ao jogo desenvolvido.
Agradeo ao meu irmo Henrique, que ao longo toda a minha vida foi um grande amigo e
companheiro.
Agradeo Milene pelo amor, amizade, respeito e carinho que tem me dado ao longo destes
anos.
Finalmente, agradeo a todas as pessoas que acreditaram em mim e me apoiaram durante todos
estes anos.
vi
SUMRIO
LISTA DE FIGURAS............................................................................................
..................viii
LISTA DE TABELAS......................................................................................................
..........ix
1 INTRODUO..............................................................................................
.........................1
1.1 Consideraes Iniciais................................................................................
......................1
1.2 Motivao....................................................................................................
.....................2
1.3 Objetivos Gerais...................................................................................
............................3
1.4 Objetivos Especficos.....................................................................................................
...3
1.5 Estrutura do Trabalho............................................................................
...........................4
2 REFERENCIAL TERICO...............................................................................
.....................5
2.1 A Matemtica no Ensino Fundamental......................................................................
.......5
2.2 A Educao Escolar e as Novas Tecnologias da Informao e da Comunicao.............8
2.2.1 As NTIC e a Aprendizagem..........................................................................
............8
2.3 Desenvolvimento e Aprendizagem..............................................................
...................11
2.4 Os Jogos em Geral...............................................................................................
...........13
2.4.1 Os Tipos de Jogos...............................................................................
....................14
2.5 Os Jogos na Educao...........................................................................
.........................16
2.6 Anlise da Usabilidade de Software Educacionais de Matemtica.................................19
3 METODOLOGIA................................................................................................
..................22
3.1 Tipo de Pesquisa...........................................................................................
..................22
3.2 Materiais........................................................................................................
.................22
3.3 Desenvolvimento........................................................................................
....................23
4 RESULTADOS E DISCUSSO.......................................................................................
.....30
4.1 Discusses Finais......................................................................................................
......34
5 CONCLUSO...................................................................................................
....................35
REFERNCIAS BIBLIOGRFICAS....................................................................................
..36
APNDICE A: OTIMIZAO DA MQUINA DE ESTADOS
vii
LISTA DE FIGURAS
Figura 2.1: Tela principal do jogo Trilha Matemtica............................................................15
Figura 2.2: Visualizao do ltimo Teorema de Fermat com n = 5..........................................17
Figura 3.1: Quadrados em rota de coliso.................................................................................28
Figura 3.2: Exemplo de uma coliso com a Bounding Box......................................................29
Figura 4.1: Visualizao da tela inicial do jogo.........................................................................30
Figura 4.2: Visualizao da tela de instrues do jogo..............................................................31
Figura 4.3: Visualizao da tela principal do jogo.....................................................................31
Figura 4.4: Visualizao da tela de congratulaes do jogo......................................................32
Figura 4.5: Visualizao da tela de pause do jogo.....................................................................33
Figura 4.6: Visualizao da tela de escolha de operadores do jogo...........................................33
viii
LISTA DE TABELAS
Tabela 2.1: Principais caractersticas das NTIC relevantes para os processos de ensino e
aprendizagem...............................................................................................................................
9
Tabela 2.2: Vantagens e desvantagens do uso de jogos no contexto de ensino-aprendizagem. .18
Tabela 2.3: Caractersticas da Qualidade de Software segundo a ISO/IEC 9126-1...................19
ix
1 INTRODUO
1.1 Consideraes Iniciais
Os computadores esto cada vez mais inseridos em nosso dia-a-dia. Seu uso deixou de
ser privilgio de grandes corporaes para se tornar obrigatrio em qualquer empresa de mdio
ou pequeno porte, assim como um equipamento quase indispensvel em qualquer domiclio de
classes mdia e alta.
Muito antes do advento dos computadores, no entanto, j existiam os jogos. Como afirmam Pierozan & Brancher (2004), o ato de jogar to antigo quanto o prprio homem. Como
a pedagogia nos mostra, o jogo necessrio no processo de desenvolvimento do ser humano,
tendo uma funo vital para o indivduo, principalmente como forma de construo e reconstruo da realidade.
de conhecimento geral que as crianas e os adolescentes esto cada vez mais cedo e
com maior freqncia tendo contato com novas tecnologias, bem como com jogos de computador e video-game. Alm disso, desde a dcada de 80 do sculo passado, os computadores
vem sendo cada vez mais utilizados na rea educacional, demonstrando de forma clara o
grande potencial dos programas educacionais, em especial o dos jogos. Argumenta-se aqui que
o processo de educao no deve se restringir aos mesmos mtodos de ensino utilizados tradicionalmente, pois o uso da informtica na educao est relacionado com o avano da cincia e
da tecnologia, que nos permite ampliar de sobremaneira a gama de ferramentas de auxlio
educao. Pode-se observar as conseqncias do uso de mtodos de educao tradicionais em
disciplinas como a Matemtica.
A Matemtica est presente no cotidiano de cada indivduo de diferentes formas.
Quando esta presena no se faz de forma explcita, a Matemtica, assim como qualquer outra
disciplina, torna-se muito difcil de ser compreendida, como explicam Bittencourt & Figueiredo (2005:2):
A Matemtica uma das disciplinas inserida no contexto dos contedos
programticos que se caracteriza de forma negativa, devido ao fato de no
despertar o interesse e conseqentemente no ser atrativa ao aprendiz. Essa
disciplina responsvel por altos ndices de reprovao dos educandos,
tanto no Ensino Fundamental como no Ensino Mdio, sendo responsvel,
muitas vezes, pela evaso escolar. Paradoxalmente, os princpios
1.2 Motivao
Na disciplina Matemtica Discreta, ministrada pela Professora Renata Couto Moreira
do Departamento de Cincia da Computao (DCC) da Universidade Federal de Lavras
(UFLA), comeou a ser desenvolvido um trabalho de estudo e implementao de jogos matemticos, os quais eram estudados em aula, tais como O Problema de Josephus e A Torre de
Hani. O desenvolvimento dos conceitos de combinatria, relaes de recorrncia, teoria dos
grafos se davam com exemplos de jogos, os quais so conhecidos desde a antigidade. Os
jogos implementados eram ento avaliados e depois arquivados.
Observando-se que os jogos, alm de servirem como forma de avaliao de aprendizagem dos alunos, poderiam ser aproveitados para diverso, foram num primeiro momento apresentados aos alunos de computao, e em seguida estas apresentaes foram aberta
comunidade durante dois semestres consecutivos. Estas apresentaes, realizadas em um laboratrio com cinco computadores, disponibilizado pelo DCC da UFLA, com um bom espao e
condies adequadas para a circulao de pessoas, se tornaram ento oficinas de jogos, e obtiveram resultados muito acima das expectativas, pois atingiam um pblico em torno de 80
pessoas por oficina, incluindo estudantes de outros cursos universitrios, educadores do ensino
fundamental e mdio e estudantes de duas escolas de Lavras.
Posteriormente, com a construo do Laboratrio de Educao Continuada (LEC),
contendo 30 computadores no campus histrico da UFLA, a oficina encontrou espao para
ampliar seu atendimento. A III Oficina de Jogos Cooperativos Computacionais foi ento
montada nesse espao, e conseguiu atender em torno de 200 pessoas, incluindo a participao
de quatro instituies de ensino de Lavras. A satisfao dos participantes superou todas as
expectativas e a demanda pela oficina aumentava constantemente. (PJCC, 2007)
Surgiu ento a oportunidade de levar essas oficinas de jogos a vrias escolas da cidade
de Lavras, em oficinas mveis, nas quais cinco computadores da UFLA eram levados, com os
jogos instalados. Esta experincia se mostrou proveitosa, pois vrios dos alunos dessas escolas
nunca haviam tido contato com computadores e assim aprendiam a utiliz-lo de forma divertida e proveitosa.
Uma vez que os resultados foram positivos durante as oficinas (Cobucci et al., 2005),
decidiu-se iniciar um projeto de acompanhamento mais prolongado em uma escola. O objetivo
do projeto era ir semanalmente em uma escola, durante todo um semestre, ensinar aos seus
professores noes bsicas de informtica e como poderiam utilizar os jogos para lecionar o
contedo de suas disciplinas, levando os alunos a terem prazer de estudar.
Observou-se, no entanto, que algumas dessas escolas possuam seus prprios laboratrios de informtica, mas que no eram utilizados porque os professores dessas escolas tambm
no possuam conhecimento de informtica suficiente. O objetivo das oficinas passou ento a
ser tambm o de incluso digital de professores de escolas do ensino fundamental. Surgiu
assim o Curso de Incluso Digital e Jogos Cooperativos Computacionais, sendo ministrado
pela primeira vez em 2005 (Cobucci et al., 2005) e novamente em 2006.
Toda essa rica experincia tornou evidente um problema: a falta de mais jogos educativos que fossem ao mesmo tempo divertidos, gratuitos e, principalmente, que se adaptassem s
necessidades dos educadores, pois os jogos criados ou disponveis muitas vezes abordavam
contedos aqum e/ou alm dos que j haviam sido passados aos alunos pelo professor, o que
prejudicava ou mesmo inviabilizava seu uso.
ensino-aprendizagem; c) realizar uma breve reviso bibliogrfica sobre a influncia dos jogos
no processo de desenvolvimento intelectual de uma criana; d) um levantamento sobre algumas questes relacionadas a qualidade de software.
2 REFERENCIAL TERICO
Neste captulo se encontra a base terica necessria compreenso do trabalho. Ele est
subdividido em sees que abrangem desde o processo de ensino da Matemtica at algumas
questes sobre qualidade de software educacional.
As NTIC, a partir da integrao dos sistemas semiticos2 clssicos, conforme Coll &
Mart (2004:425), criam condies totalmente novas de tratamento, de transmisso, de acesso
e de uso das informaes transmitidas at agora pelos suportes clssicos da escrita, das
imagens, do som ou da fala. E essas condies conferem s NTIC caractersticas especficas
como 'instrumentos psicolgicos', como mediadoras do funcionamento psicolgico das pessoas
que as utilizam.
As caractersticas especficas as quais Coll & Mart (2004) se referem so: formalismo,
interatividade, dinamismo, multimdia e hipermdia. A Tabela 2.1 indica quais as potencialidades de cada uma dessas caractersticas para a aprendizagem:
Tabela 2.1: Principais caractersticas das NTIC relevantes para os processos de ensino e aprendizagem
Caracterstica
Potencialidades
Formalismo
Interatividade
Dinamismo
Multimdia
Possibilidade de passar de um sistema para outro. Integrao e complementaridade de formatos de representao. Generalizao.
Hipermdia
Com relao ao formalismo, fazer uso das NTIC requer que o usurio siga corretamente uma seqncia muito bem definida, precisa, e em alguns casos extremamente rgida de
comandos. Esses comandos mudam de acordo com o dispositivo sendo operado e podem
variar desde o pressionar de um boto at um comando verbal. Se a seqncia dos comandos
ou os mesmos estiverem incorretos, o dispositivo, seja ele qual for, no executar a tarefa desejada.
O formalismo exigido pelas NTIC traz algumas vantagens. Com as palavras de Coll &
Mart (2004:425):
[...] Essa exigncia pode criar frustrao em alguns usurios, que se sentem
incomodados diante da pouca flexibilidade da mquina, que se nega a
2 Semitica: Do grego semeiotik ou a arte dos sinais. a cincia geral dos signos e da semiose, que estuda
todos os fenmenos culturais como se fossem sistemas sgnicos, isto , sistemas de significao.
(WIKIPDIA, 2007)
10
exterior,
paralelo,
de
certa
forma,
ao
processo
de
11
de
comportamento
considera-se
coincidente
com
desenvolvimento.
Entretanto, para Vygotsky (2003:116), o processo de desenvolvimento no coincide
com o da aprendizagem, o processo de desenvolvimento segue o da aprendizagem. No
presente trabalho, sero consideradas as idias de Vygotsky sobre o desenvolvimento e a
aprendizagem.
Alm de estar relacionado com o processo de desenvolvimento, o processo de aprendizagem est tambm intimamente relacionado com o processo de ensino. Para Lerner (2005:
120), ensinar colocar problemas a partir dos quais seja possvel reelaborar os contedos
escolares.
Para que uma situao se caracterize como uma situao problemtica, necessrio que
ela atenda a alguns critrios. Com as palavras de Lerner (2005:121):
[...] deve ter sentido no campo de conhecimento dos alunos, porm no
deve ser resolvel s a partir dos conhecimentos que as crianas j possuem.
Em outras palavras, uma situao problemtica tem que permitir que os
alunos ponham em prtica os esquemas de assimilao que j construram e
interpretem-na a partir dos mesmos, porm estes conhecimentos prvios no
devem ser suficientes para resolv-la: a situao deve exigir a construo de
novos conhecimentos ou de novas relaes entre os j elaborados. Tambm
conveniente que o problema seja rico e aberto, que coloque os alunos diante
da necessidade de tomar decises, que lhes permita escolher procedimentos
ou caminhos diferentes.
Como examinado anteriormente, as NTIC oferecem diferentes formas de representao
da informao. Esta caracterstica pode ser utilizada para criar situaes problema para as
12
crianas, seja expondo-as a algo novo ou apenas como uma forma diferente de apresentar-lhes
algo j conhecido.
Essa a situao, por exemplo, do aprendizado de operaes matemticas, que necessita de muita prtica para ser consolidado. Esta prtica geralmente obtida de forma tediosa
atravs de exerccios em lpis e papel. Neste contexto, os jogos podem ser utilizados como
uma alternativa prazerosa a estes exerccios.
13
14
sentado por um peo passando por uma trilha. Para passar de um ponto para o outro, preciso
que a pessoa responda questes de matemtica. Se acertar, o jogador avana o nmero de casas
informado por um dado lanado. Ganha o jogo quem chegar primeiro ao final da trilha respondendo corretamente as questes de matemtica apresentadas. O nvel de dificuldade aumenta
conforme o jogador se aproxima do final da trilha. As questes propostas pelo jogo so baseadas nas quatro operaes fundamentais da Matemtica (adio, subtrao, diviso e multiplicao).
15
determinista de uma nica classificao. Nesta abordagem, existe uma concepo difusa onde
cada jogo pode apresentar nveis diferentes de cada um dos estilos, ou seja, um nvel de estratgia e um nvel de aventura, por exemplo.
A existncia de jogos educativos como o Trilha Matemtica torna bvio que a utilizao dos jogos na educao no algo indito e que h, portanto, amplo potencial para criao
de mais e novos jogos de Matemtica.
O potencial econmico dos jogos tambm merece ser considerado, como ilustrado por
Monserrat & Castro (2007:2):
[...] o setor de jogos de computador vem ocupando uma fatia crescente e importante na indstria de software. No ltimo levantamento realizado pela ABRAGAMES em 2005, o mercado brasileiro de produo de
jogos de computador tem mostrado um grande potencial, sendo que de 2003
para 2004 o crescimento chegou a 40%, o que representa cerca de 18
milhes de reais de faturamento.
16
A utilizao de jogos em mbito educacional traz uma srie de vantagens e desvantagens. Grando apud Moratori (2003) elaborou a seguinte lista (Tabela 2.2) de vantagens e
desvantagens da insero de jogos no contexto de ensino-aprendizagem:
17
Vantagens
Desvantagens
A partir destas observaes, pode-se afirmar que o uso de jogos como ferramenta de
auxlio ao ensino-aprendizagem traz vantagens, mas somente se forem utilizados de forma
adequada. As vantagens podem ser ainda maiores se a utilizao dos jogos for aliada a recursos
computacionais.
responsabilidade do educador utilizar de forma correta estes recursos, mas isso no
significa que as ferramenta sejam perfeitas. Alguns problemas enfrentados pelos educadores
18
nesta rea so provenientes de falhas presentes nas prprias ferramentas. Para minimizar este
problema, necessria uma anlise da usabilidade dos jogos educacionais computadorizados.
Caracterstica
Descrio
Funcionalidade
Usabilidade
Confiabilidade
Eficincia
19
20
4 Os temas transversais dos novos PCN incluem tica, Meio ambiente, Sade, Pluralidade cultural e
Orientao sexual. Eles expressam conceitos e valores fundamentais democracia e cidadania e
correspondem a questes importantes e urgentes para a sociedade brasileira de hoje, presentes sob vrias
formas na vida cotidiana.
21
3 METODOLOGIA
Este captulo apresenta, inicialmente, o tipo de pesquisa em que se enquadra o presente
trabalho. Em seguida, so apresentados os materiais utilizados durante a execuo do projeto.
Por fim, so apresentadas a metodologia e as etapas de desenvolvimento do projeto.
3.2 Materiais
A plataforma de desenvolvimento do jogo foi um microcomputador com processador
Intel Pentium 4 de 3 GHz, 2 GB de memria RAM, sistema operacional Microsoft
Windows VistaTM, placa de som Creative Sound Blaster Audigy 2 ZS e placa de vdeo
nVidia GeForceTM 6800 Ultra com 256 MB de RAM.
As ferramentas utilizadas para o desenvolvimento do jogo foram o Integrated Development Environment (IDE) Eclipse para desenvolvedores C/C++ verso Europa e a biblioteca
para desenvolvimento de aplicativos multimdia Simple DirectMedia Layer (SDL) verso
1.2.11 em conjunto com a Application Programming Interface (API) grfica OpenGL. A
linguagem de programao utilizada na implementao foi a linguagem C e o compilador utili-
zado foi o GNU C Compiler (GCC) verso 4.2.1, juntamente com a verso para Windows do
depurador GDB verso 5.2.1.
O jogo foi testado em microcomputadores com diversas configuraes. A configurao
mais simples utilizada nos testes foi a de um microcomputador com processador Intel
Pentium III 550 MHz com 146 MB de memria RAM, sistema operacional Ubuntu Linux
7.04, placa de som C-Media Electronics Inc. CM8738 e placa de vdeo Silicon Integrated
Systems 530 com 8 MB de RAM. A configurao mais robusta utilizada nos testes foi a de um
notebook Acer 3050-1958, com processador AMD SempronTM Mobile 3400+ com 2 GB de
memria RAM, sistema operacional Ubuntu Linux 7.04, placa de som ATITM Technologies Inc.
SB450 HDA Audio e placa de vdeo ATITM RadeonTM Xpress 1100.
3.3 Desenvolvimento
O projeto exposto neste trabalho tem incio no final do ano de 2006, aps a realizao
do curso de Incluso Digital e Jogos Cooperativos Computacionais, quando ficou clara a
necessidade de jogos educacionais gratuitos e flexveis. De novembro de 2006 at maro de
2007 foram realizadas pesquisas bibliogrficas sobre o uso de jogos no processo de ensinoaprendizagem e sobre a qualidade de software educacionais.
Na seqncia, foi feito um levantamento dos requisitos e a delimitao do tema do
jogo. Ficou estabelecido que o tema seria a Matemtica do ensino fundamental, uma vez que
esta uma das reas onde os alunos encontram grande dificuldade para contextualizao do
contedo, e, como visto na Seo 2.1, a contextualizao do tema abordado em sala de aula
contribui muito para sua assimilao, e, conseqentemente, para sua aprendizagem.
Aps a definio do tema, foram determinadas as principais caractersticas do jogo,
como por exemplo sua interface, sua mecnica e os objetivos propostos ao jogador. A interface
do jogo foi concebida tendo em mente as questes abordadas na Seo 2.6 sobre usabilidade
de software educacionais. Quanto aos objetivos, foi determinado que nesta primeira verso do
jogo estes se limitariam simples obteno de um determinado nmero de pontos. Verses
futuras do mesmo podero contar com um leque maior de opes, que sero vistas com mais
detalhes na Seo 4.1.
A mecnica do jogo foi desenvolvida baseada nas quatro operaes matemticas fundamentais (adio, subtrao, multiplicao e diviso) e consiste na formao de expresses aritmticas simples, que envolvem apenas um operador e dois operandos. O jogador escolhe um
23
24
mento dos eventos disparados pelo sistema operacional ou pelo usurio, como por exemplo o
pressionamento de teclas; 5) joystick, que manipulam e interpretam os dados referentes a um
controlador de jogo acoplado ao computador; 6) som, responsveis pela reproduo e gravao
de efeitos sonoros e msica; 7) CD-ROM, que fornecem acesso direto a unidades de CD-ROM
presentes na mquina, bem como meios de reproduzir faixas de CDs de udio; 8) programao
paralela, que fornecem meios para a criao de aplicativos que executam vrias tarefas simultaneamente; 9) tempo, responsveis pela medio do tempo de execuo do programa e pela
criao de temporizadores; e 10) arquivos, que manipulam arquivos diretamente.
Para o desenvolvimento do jogo implementado no presente trabalho, apenas as funes
relacionadas a eventos, vdeo, som, tempo e configurao da prpria SDL foram utilizadas.
Os efeitos sonoros e msica no jogo foram reproduzidos com o auxlio de uma extenso da SDL chamada SDL_mixer. A SDL_mixer uma biblioteca que estende as funcionalidades de reproduo de som da SDL, uma vez que esta no capaz de reproduzir vrios efeitos
sonoros e msica simultaneamente. A SDL_mixer est disponvel gratuitamente em seu site
oficial8.
Como mencionado anteriormente, a SDL capaz de se beneficiar da acelerao de
vdeo por hardware disponvel com placas de vdeo atuais quando utilizada juntamente com a
OpenGL. OpenGL uma Application Programming Interface (API) grfica suportada por
vrias plataformas e amplamente utilizada na criao de jogos e programas do tipo Computer
Aided Design (CAD) (OpenGL, 2007). Para tirar proveito da acelerao de vdeo por
hardware, a parte visual do jogo foi implementada utilizando a API OpenGL.
Terminada a escolha das ferramentas que foram utilizadas para a implementao do
jogo, teve incio a fase de codificao. Durante esta fase, alguns problemas foram encontrados
e solucionados. Foram eles: a) a implementao e otimizao da mquina de estados do jogo;
b) a manuteno de uma velocidade constante entre mquinas com diferentes configuraes; c)
exibio dos objetos na tela de forma eficiente; d) deteco de coliso entre os objetos do jogo.
A implementao e otimizao da mquina de estados do jogo se deve ao fato de que
um jogo qualquer pode ser visto computacionalmente como uma grande mquina de estados,
onde cada estado representa um determinado ponto no jogo. Por exemplo, durante a exibio
do Menu principal, o jogo se encontraria no estado Exibindo Menu Principal, enquanto
que durante a execuo do ncleo do jogo, o estado atual poderia ser Executando Ncleo.
Estes estados podem ser muito diferentes entre si. Por exemplo, o estado Exibindo Menu
8 http://www.libsdl.org/projects/SDL_mixer/
25
Principal, onde um menu com opes apresentado ao jogador para que este decida qual ao
ser tomada, totalmente diferente do estado Executando Ncleo, onde o jogador se depara
com alguns operandos e operadores e tem que escolher rapidamente quais sero utilizados para
formar a expresso.
Uma possvel implementao em C para a mquina de estados proposta anteriormente
seria a utilizao de um comando condicional, onde o estado atual da mquina seria verificado
e ento tratado. Este comando condicional se encontraria dentro do loop de controle e seria
avaliado a cada iterao9 do mesmo. Esta soluo pode ser considerada ineficiente, pois o loop
de controle itera vrias vezes por segundo, enquanto que o estado muda raramente, fazendo
com que o processador da mquina realize um nmero considervel de comparaes que,
embora sejam efetuadas rapidamente, so em sua maioria desnecessrias.
A soluo para este problema foi obtida substituindo o comando condicional por um
ponteiro para funo. Cada estado da mquina de estados do jogo foi implementado em uma
funo que trata apenas o estado em questo. O loop de controle apresenta um ponteiro que
aponta para a funo correta, de acordo com o estado em que se encontra o jogo. Este ponteiro
atualizado pela prpria funo, chamada sempre que o estado atual do jogo alterado. Desta
forma, no existe nenhuma comparao para determinar o estado atual do jogo no loop de
controle, o que o torna mais eficiente.
O Apndice A fornece um exemplo de uma mquina de estados simples implementada
utilizando-se as duas tcnicas mencionadas anteriormente.
O segundo problema encontrado foi a manuteno da velocidade do jogo em diferentes
mquinas. de conhecimento geral que mquinas com configuraes diferentes necessitam de
tempos diferentes para processar uma mesma informao. Este fato normalmente no representa um problema para aplicaes como editores de texto ou planilhas eletrnicas, mas em
aplicaes multimdia, como o caso dos jogos, isso se torna um problema srio, como
exemplificado a seguir:
Imagine que um personagem em um determinado jogo caminhe com uma velocidade
tal que este demore 5 segundos para cruzar a tela de um canto a outro em uma mquina com
configurao X. Se o mesmo jogo for executado em uma mquina com configurao Y, tal que
Y diferente de X, o personagem deve continuar caminhando com a mesma velocidade, de
forma que este demore os mesmos 5 segundos para cruzar a mesma tela.
9 Iterao: Sinnimo de repetio.
26
at 2
2
onde S representa a posio final do objeto, S 0 a posio inicial, V 0 o valor da velocidade inicial, t o tempo decorrido e a o valor da acelerao do objeto. Utilizando esta
frmula, todos os objetos do jogo se movem de forma consistente, independentemente da
performance da mquina que o est executando.
Durante a fase de implementao do jogo, a exibio de objetos como a nave, as esferas
e as nuvens na tela revelou-se outro problema a ser solucionado. Uma vez que a posio destes
objetos na tela varia ao longo do tempo, estes precisam ser redesenhados constantemente. Se
tais objetos estiverem na memria principal do sistema, o tempo gasto para copi-los para a
memria da placa de vdeo de forma a desenh-los na tela tornaria o processo de exibio da
cena to lento que inviabilizaria o jogo.
A soluo para este problema foi obtida com a utilizao de Display Lists (DL). DL so
um recurso da OpenGL que permite que diferentes operaes sejam agrupadas na forma de um
nico comando. As DL no apenas facilitam a criao de objetos complexos mediante a unio
de vrios objetos mais simples, como fornecem um considervel aumento na performance,
pois os passos necessrios para desenhar tais objetos so previamente compilados no momento
da criao da DL (HEARN & BAKER, 2004). Para cada um dos objetos do jogo mencionados
anteriormente foi criada uma DL. As DL armazenam em memria de vdeo as informaes
necessrias para desenhar os objetos ao invs de armazen-las na memria principal do
sistema, acelerando o processo de exibio da cena.
Uma vez que para obter pontos o jogador precisa atingir as esferas que aparecem, foi
necessria a implementao de um algoritmo para deteco de coliso entre os projteis disparados pela nave e as esferas. O processo de deteco de coliso consiste em verificar se um
objeto se sobrepe a outro. Se eles se sobrepem, ento h uma coliso.
O custo computacional para verificar se houve uma coliso entre dois objetos depende
da forma dos objetos e da preciso desejada. Quando mais irregular a forma dos objetos envol-
27
vidos e/ou quanto maior for a preciso desejada, maior ser o custo computacional do algoritmo.
O caso mais simples, e portanto o que exige menor esforo computacional, o da coliso entre dois retngulos. Por exemplo, o quadrado ABCD movimenta-se da esquerda para
direita e est prestes a colidir com o quadrado FGHI que se movimenta da direita para a
esquerda, conforme a Figura 3.1:
A existncia ou no de uma coliso entre eles poderia ser facilmente verificada simplesmente comparando a posio do ponto B com a posio do ponto I. Se o ponto B estiver mais
direita e mais acima que o ponto I, os quadrados estaro se sobrepondo, e portanto, estaro
colidindo. Caso contrrio, no h uma coliso.
Infelizmente, a deteco de coliso envolvendo objetos circulares no to simples
devido a enorme quantidade de vrtices que estes objetos possuem. Se o mesmo mtodo utilizado para a deteco de coliso entre retngulos fosse utilizado para esferas ou crculos, o
tempo necessrio para comparar a posio de todos os vrtices envolvidos inviabilizaria o jogo.
Este problema foi ento solucionado aplicando-se uma tcnica de deteco de coliso com o
uso de Bounding Boxes.
Esta tcnica consiste em utilizar um objeto simples, como um quadrado, para envolver
um objeto complexo, como por exemplo uma esfera, e considerar apenas o objeto mais simples
(Bounding Box) durante a verificao por colises. Sendo assim, o algoritmo implementado
28
para detectar colises entre o projtil do jogador e as esferas foi o mesmo utilizado para detectar colises entre dois retngulos.
A desvantagem do uso de Bounding Boxes a reduo na preciso do local de coliso
entre os objetos. Ao utilizar um quadrado para envolver uma esfera, uma falsa coliso pode ser
detectada, caso um dos objetos se movimente em um ngulo tal que este colida com a Bounding Box, mas no colida com o objeto em seu interior. A Figura 3.2 ilustra este caso:
29
4 RESULTADOS E DISCUSSO
Este Captulo tem por objetivo apresentar de forma sucinta o jogo educacional implementado neste trabalho. Para isso, sero apresentadas imagens de cada elemento importante
que compe a interface do jogo.
De acordo com as classificaes dos jogos apresentadas na Seo 2.4.1, o jogo implementado no presente trabalho pode ser considerado uma combinao de Ao e Educacional.
O jogador, representado por uma nave equipada com uma arma capaz de disparar projteis, voa
em direo a diversas esferas, cada uma contendo um nmero ou um operador matemtico. Ao
atingir uma esfera com um projtil, ela destruda e o seu contedo utilizado para formar
uma expresso aritmtica. Quando uma expresso aritmtica completa formada, o seu resultado calculado e adicionado pontuao atual do jogador. Ao completar um total de 500
pontos o jogo termina e o jogador parabenizado.
Ao iniciar o jogo, o usurio levado ao Menu Principal (Figura 4.1). Neste menu, o
usurio pode escolher entre visualizar instrues sobre como jogar, iniciar o jogo, habilitar e
desabilitar operadores ou sair do jogo. Cada uma destas opes sero explicadas com mais
detalhes a seguir.
Caso o usurio escolha a primeira opo (Instrues), lhe sero apresentadas as instrues sobre como jogar, os controles do jogo e qual o objetivo (Figura 4.2). Uma vez nesta
tela, o usurio pode retornar ao Menu Principal pressionando a tecla Escape (ESC).
A segunda opo (Iniciar Jogo) inicia o jogo. O usurio assume ento o controle da
nave descrita anteriormente. Os elementos apresentados nesta tela (Figura 4.3) so descritos
com mais detalhes a seguir:
31
painel mostrar tambm o resultado da mesma at que o jogador inicie a construo de uma
nova expresso.
Nave: Esta a nave do jogador. Ela pode se movimentar livremente pelo cenrio
pressiona a tecla Espao. Eles so utilizados para destruir as esferas contendo os operandos e
operadores.
Esfera: Cada esfera contm apenas um operando ou um operador. Sempre que uma
delas atingida por um projtil disparado pela nave do jogador, ela desaparece e seu contedo
se torna ento parte da expresso aritmtica sendo formada pelo jogador. Se o contedo da
esfera no for compatvel com a expresso formada, caso o jogador atinja um operando logo
aps outro sem antes atingir um operador, por exemplo, o contedo da mesma ignorado.
Assim que o jogador tenha obtido um nmero de pontos maior ou igual ao indicado
pelo Objetivo mostrado no Painel, uma tela de congratulaes exibida (Figura 4.4). Nesta tela
o jogador tem a opo de reiniciar o jogo, retornar ao Menu Principal ou encerrar a aplicao.
32
permitindo que ele retorne ao Menu Principal, retorne ao jogo ou simplesmente encerre a aplicao.
A terceira opo do Menu Principal (Escolher Operadores) permite que o jogador escolha quais operadores aparecero durante a execuo do jogo. Atravs do menu apresentado
(Figura 4.6), o jogador pode, por exemplo, habilitar apenas os operadores de adio e multiplicao, tornando o jogo mais fcil.
33
34
5 CONCLUSO
Como argumentado ao longo do trabalho, a utilizao de jogos na educao algo no
somente vivel, mas que vem trazendo bons resultados, principalmente como forma de trazer
para o cotidiano dos alunos do ensino fundamental conceitos que normalmente so apresentados como algo muito distante da realidade em que vivem, ou na forma de tediosos exerccios
em lpis e papel, especialmente em disciplinas como a Matemtica.
O presente trabalho procurou discutir como os jogos educacionais podem ser benficos
ao desenvolvimento e ao aprendizado das crianas e buscou tambm apresentar o potencial da
utilizao das novas tecnologias da informao em prol da educao.
Desenvolvi um jogo educacional gratuito e flexvel que pode ser utilizado como uma
ferramenta para auxiliar na fixao das quatro operaes matemticas fundamentais e que
serve tambm como forma de entretenimento. Alm disso, este jogo foi construdo procurando
atender s questes sobre usabilidade de software educacionais, como explicadas na Seo 2.6.
Vimos tambm que verses futuras desse jogo educacional podem ser aprimoradas de
diversas maneiras, dentre elas, a apresentao de novos objetivos ao jogador, novas opes para
o controle do hardware e melhorias na interface e na mecnica do jogo.
No decorrer deste trabalho aprofundei meus estudos sobre o processo de desenvolvimento e de aprendizagem, aprimorei minha redao de textos cientficos e adquiri novos
conhecimentos sobre programao, a biblioteca multimdia Simple DirectMedia Layer e a
Application Programming Interface (API) grfica OpenGL. Esses estudos esto sendo importantes para minha formao acadmica e pessoal, e traro benefcios para meu desempenho
profissional.
REFERNCIAS BIBLIOGRFICAS
AMATO, S. A.. Reflexes Sobre Matemtica no Ensino Fundamental. Jornal da Cincia,
Braslia, v. 1, n. 2560, p. 3, Julho 2004.
BITTENCOURT, J. R.; FIGUEIREDO, C. Z.. Jogos Computadorizados para Aprendizagem
Matemtica no Ensino Fundamental. Novas Tecnologias na Educao, Porto Alegre, v. 3,
n. 1, p. 4-5, Maio 2005.
BITTENCOURT, J. R.; GIRAFFA, L. M.. Modelando Ambientes de Aprendizagem Virtuais
utilizando Role-Playing Games. In: XIV Simpsio Brasileiro de Informtica na
Educao. Rio de Janeiro: SBC, 2003. p. 718-727.
BOTELHO, L.. e-Learning Brazil. Desenvolvido por: MicroPower, 2007. Contm artigos,
livros e notcias sobre tecnologia em educao. Disponvel em:
<http://www.elearningbrasil.com.br/home/artigos/artigos.asp?id=1921>. Acesso em: 5 fev.
2007.
BRASIL, 1997. Secretaria de Educao Fundamental. "Parmetros curriculares nacionais:
introduo aos parmetros curriculares nacionais". MEC/SEF.
LDICO. In: BUENO, F. S.. Minidicionrio da Lngua Portuguesa. So Paulo: FTD, 2000.
p. 480.
COBUCCI, C. E. M.; RIBEIRO, R. T.; MOREIRA, R. C.; NETO, J. M.. Experincia de uma
Oficina Continuada de Jogos Cooperativos Computacionais, 2005. 10 pginas. Artigo
Universidade Federal de Lavras. No publicado.
COLL, C., MART E.. A educao escolar diante das novas tecnologias da informao e da
comunicao. In: COLL, C., [et. al.]. Desenvolvimento psicolgico e educao: psicologia
da educao escolar. 2 ed. Porto Alegre: Artmed, 2004. v. 2, cap. 25, p. 420-439.
GLADCHEFF, A. P.; OLIVEIRA, V. B.; SILVA, D. M.. O Software Educacional e a
Psicopedagogia no Ensino de Matemtica Direcionado ao Ensino Fundamental. Revista
Brasileira de Informtica na Educao, So Paulo, v. 8, n. 8, p. 63-70, Abril 2001.
36
37
PIEROZAN, C.; BRANCHER, J. D.. A Imp. do Jogo Educativo e suas vantagens no processo
Ensino e Aprendizagem. In: Congresso Nacional de Ambientes Hipermdia para
Aprendizagem. Florianpolis: UFSC, 2004. p. 2.
PJCC. Portal de Jogos Cooperativos Computacionais. Desenvolvido por: Rubens Takiguti
Ribeiro, 2004-2007. Site oficial do Grupo de Jogos Cooperativos Computacionais (GJCC).
Disponvel em: <http://www.comp.ufla.br/pjcc/>. Acesso em: 28 jun. 2007.
ROLLINGS, A.; MORRIS, D.. Game Architecture and Design. 1 ed. Upper Saddle River,
NJ 07458: Pearson Prentice Hall, 2003. 960 p.
SDL. Simple DirectMedia Layer. Desenvolvido por: Scott Call, Gatan de Menten e Tim
Jones, 2007. Pgina oficial da Simple DirectMedia Layer. Disponvel em:
<http://www.libsdl.org/>. Acesso em: 15 jul. 2007.
VYGOTSKY, L. S.. Aprendizagem e Desenvolvimento Intelectual na Idade Escolar. In:
VYGOTSKY, L. S.; LURIA, A. R.; LEONTIEV A.. Linguagem, Desenvolvimento e
Aprendizagem. 8 ed. So Paulo SP: cone, 2003. Volume nico, cap. 6, p. 103-117.
WIKIPDIA. Wikimedia Foundation. Desenvolvido por: Contribuidores da Wikipdia, 2007.
Apresenta contedo enciclopdico. Disponvel em: <http://pt.wikipedia.org/>. Acesso em: 5
fev. 2007.
38
APNDICES
case ESTADO_JOGO_EM_PAUSA:
/* Tratar o estado em que o jogo est em pausa */
break;
/* Finalizando o jogo */
...
O trecho de cdigo abaixo ilustra como a mesma mquina de estados exibida acima
pode ser implementada utilizando-se um ponteiro para funo:
/* Funes que representam estados do jogo */
void EstadoExecutandoNucleo(void);
void EstadoExecutandoMenuPrincipal(void);
void EstadoJogoEmPausa(void);
/* Declarao do ponteiro para a funo da mquina de estados */
void (*pProcessarJogo)(void) = EstadoExecutandoMenuPrincipal;
/* Inicializao do jogo */
...
/* Loop de controle do jogo */
while (!blJogoAcabou) {
/* Processa o jogo */
pProcessarJogo();
}
/* Finalizando o jogo */
...