Analise comparativa das funcionalidades de ferramentas para a criação de jogo educacional Áquilla Odlanier Faria Nascimento 1, Thállys Lisboa Simões 2, Joselice Ferreira Lima 3 123 Instituto Federal do Norte de Minas Gerais Campus Januária (IFNMG) aofnas@hotmail.com, thallys.lisboa15@gmail.com, josylima80@gmail.com Abstract. Game development is an area that is growing exponentially. Games are used as a means of entertainment, training and educational environment as a support tool for teaching / learning. This article presents tools used for developing games and applications in 2D and 3D with its main features for creating, modeling or game programming in the quest to make the selection, to suit the needs of each game project. The method adopted is the literature review together with the comparative analysis of tools. The result obtained from analysis shows the strengths and weaknesses of the analyzed tools. Finally, among the evaluated, pointed out which fit the project, both in the game creating area and the development of 2D and 3D applications. Resumo. Desenvolvimento de jogos é uma área que está em crescimento exponencial. Jogos são utilizados como meio de entretenimento, capacitação e no meio educacional como ferramenta de apoio ao ensino/ aprendizagem. Este artigo visa apresentar ferramentas utilizadas para o desenvolvimento de jogos e aplicações em 2D e 3D com suas principais características para a criação, modelagem ou programação de jogos eletrônicos na busca de fazer a seleção, se adequá a necessidade de cada projeto de jogo. O método adotado é a revisão de literatura juntamente com a análise comparativas das ferramentas. O resultado da análise obtida demonstra os pontos fracos e fortes das ferramentas analisadas. Finalmente, dentre as avaliadas, apontou quais se adequá ao projeto, tanto na área de criação de jogos quanto no desenvolvimento de aplicações 2D e 3D. 1. Introdução Desde a ascensão da indústria dos jogos eletrônicos no inicio dos anos 80 até os dias atuais, os jogos se tornaram parte quase que irrefutável da cultura humana. O conceito 1Cursando 6º período do Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Câmpus Januária 2 Cursando 5º período do Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Câmpus Januária 3 Doutora em Engenharia Elétrica, Professor do IFNMG Câmpus Januária
de jogo para Salen e Zimmerman (2012) é um sistema no qual os jogadores se envolvem em um conflito artificial, definido por regras, que implica um resultado quantificável. Existem varias categorias de jogos eletrônicos, dentre eles, tem se os jogos educacionais, que de acordo com Barbosa (1998) podem ser um elemento catalisador, capaz de contribuir para o "processo de resgate do interesse do aprendiz, na tentativa de melhorar sua vinculação afetiva com as situações de aprendizagem". Já Silva, et al.(2004) diz que jogos eletrônicos podem ser utilizados para desenvolver a motivação no ensino e no processo de aprendizagem. Aprender sem saber que está aprendendo é possível quando se associa o caráter lúdico a aprendizagem. Porém, existe uma infinidade de ferramentas disponíveis para a criação de jogos eletrônicos. Nos dias de hoje, existem inúmeras ferramentas para a produção de animações gráficas e jogos, como a Unreal Engine, Blender, Unity, Stencyl e outros. O presente artigo procura focar as diferenças de funcionalidades e possibilidades de se construir um jogo educacional as ferramentas aqui comparadas. As ferramentas apresentadas neste artigo são Open Source, como é o caso do Blender e outras são pagas, mas disponibiliza funcionalidades gratuitas como é o caso da Unity e da Cry Engine. O artigo trata da comparação de ferramentas para desenvolvimento de jogos educacionais através de um quadro indicativo das funcionalidades presente em cada uma das ferramentas analisadas. Está estruturado a partir desta introdução, a fundamentação teórica, na qual é discutido o poder de aprendizado através de jogos eletrônicos e como os mesmos podem ser usados no ensino. 2. Fundamentação Teórica Piaget (1996) afirma que, o jogo é um tipo de atividade particularmente poderosa para o exercício da vida social e da atividade construtiva da criança. Do ponto de vista da criança, constituem a maneira mais divertida de aprender. Valente (1999) cita que os Jogos Educacionais apresentam a ideia de que o estudante aprende melhor quando possui liberdade para descobrir relações por si mesmo, ao invés de ser explicitamente ensinado. Normalmente são criados com a finalidade de desafiar e motivar, envolvendo o aprendiz em uma competição com a máquina e os colegas. Os jogos permitem interessantes usos educacionais, principalmente se integrados a outras atividades. Para que um jogo digital seja considerado educacional é necessário que apresente em seu funcionamento e proposta uma intenção de ensinar algum conceito desenvolvendo habilidades cognitivas e ou motoras. Entretanto, o que torna um jogo educativou ou não, nem sempre é o jogo em si, mas a forma com a qual ele é utilizado e o contexto em que está inserido Assis et al. (2006). Utilizar o jogo na educação significa, então, transportar para a ideia de ensino e aprendizagem condições para aumentar a construção do conhecimento, introduzindo as propriedades do lúdico, do prazer, da capacidade de iniciação e ação ativa e motivadora ao aluno.para isso é importante que se construa um ambiente lúdico, por isso a importancia das ferramentas a serem utilizadas no desenvolvimento de jogos. 2. 1 Ferramentas para desenvolvimento de jogos As ferramentas usadas para se fazer as comparações neste artigo são: Blender, Stencyl, Cry Engine, Unity e Unreal Engine. A comparação sera feita seguindo o conceito de especificação de software, primeiramente introduzido por Sommerville (2003) é a definição das funcionalidades (requisitos) e das restrições do
software. Geralmente é uma fase em que o desenvolvedor conversa com o cliente para definir as características do novo software. Logo, a comparação tem como foco identificar quais funcionalidades seriam de suma importância para o Cliente neste caso, a instituição visando criar um jogo educacional, para que a mesma utilize se da ferramenta mais adequada para suas necessidades. Neste artigo, identificou cinco ferramentas de desenvolvimento analisadas, a saber: 2.1.1. Blender É uma ferramenta profissional de modelagem, animação, edição de vídeo e engine de jogos. O motor de jogos Blender Game Engine (BGE) é robusto, com rápida prototipação, gratuito e de código livre. O Blender é uma ferramenta de modelagem geométrica 3D e que permite animação de personagens, o qual é Open Source e multi-plataforma. BGE é escrito em C++ e utiliza a API OpenGL para a geração de gráficos, OpenAl para o som 3D, o motor de física e detecção de colisões Open Source Bullet e a linguagem script orientada a objetos e interpretada Python para codificação. 2.1.2. Stencyl Stencyl uma plataforma para criação de jogos em 2D gratuita com opções pagas de exportação para diversas plataformas. Todos os cálculos de física e colisão dele são feitas através do Box 2D, um simulador de físicas e colisões totalmente Open Source, desenvolvido em C++. Também utiliza a lingugem Haxe e também OpenFL para que os jogos criados possam rodar nas mais diversas plataformas. Tem como premissa o paradigma de Code Free, que de acordo com Benin e Zambiasi(2010): se caracterizam por não exigir a necessidade do desenvolvimento usando linguagens de programação. Suas ferramentas dão a possibilidade de se programar através de blocos, formando diagramas de fluxo que dão origem às iterações dos elementos do jogo. 2.1.3. Cry Engine Cry Engine é um programa de computador e/ou conjunto de bibliotecas cujo objetivo é simplificar e abstrair o desenvolvimento de jogos eletrônicos ou outras aplicações com gráficos em tempo real. Esta engine não necessita de suporte adicional de middlewares e pode lidar com sua própria física, som e animações, bem como produzir o visual excepcional visto em jogos criados com a mesma. 2.1.4. Unity Unity 3D é um software que possibilita o desenvolvimento de jogos pelo fato de o desenvolvedor não precisar programar diretamente para DirectX ou OpenGL(bibliotecas usadas pelo sistema operacional para comunicação direta com placas de vídeo). Apresenta um motor de jogo que utiliza tanto JavaScript quanto C# e é uma ferramenta que possui um estilo de programação e organização bem estruturado, além de muito simples. A grande sacada é apostar no que já está pronto, criando muitas possibilidades aos desenvolvedores, que podem focar no que fazem de melhor, que é criar o comportamento dos PJs (Personagem Jogavel) e PNJs (Personagem Não Jogavel), 2.1.5. Unreal Engine Unreal Engine é um motor gráfico e um conjunto de ferramentas para desenvolvimento de jogos totalmente gratuita, com capacidade de desenvolvimento tanto em 2D quanto 3D. Possui o sistema Blueprint na qual usando blocos lógicos consegue se montar jogos completos e simulações sem a necessidade de codificação. Todo desenvolvedor tem acesso ao motor gráfico completo em C++ e ao código fonte, além de possuir a opção de exportação para diversas plataformas e integração com VR (Realidade Virtual) e dispositivos moveis.
A comparação e os critérios para a mesma, se desenvolvem no tópico seguinte. 3. Metodologia O método adotado foi a revisão de literatura que auxiliou na construção do texto e na seleção das ferramentas (Gil, 2004). Nos procedimentos adotados, analisou se se cada ferramenta possui as funcionalidades necessárias. Para a elaboração da analise das funcionalidades, utilizou se da identificação das características desejadas: 1. Modelagem/criação: A ferramenta possui alguma forma de modelagem ou criação, seja ela de personagens, cenários ou afins. Podendo ser tanto 2D, quanto 3D. 2. Engine(Motor gráfico): Possui ou é um motor gráfico para testar e rodar sua aplicação, neste caso o jogo. 3. Colisão/Física: Contém alguma forma de física ou colisão já embutidas na ferramenta, para utilização no jogo. 4. Partículas: Possui a habilidade de lidar com partículas, pequenos efeitos como poeira, fumaça, que não se caracterizam como objetos em 3d ou 2d,mas fazem parte do jogo e do seu funcionamento. 5. 3d: Utiliza se de objetos e cenários em três dimensões para auxiliar na criação, com possibilidades voltadas para o mesmo e utilização total ou parcial dessa funcionalidade. Usando essas medidas como parâmetro, foi construído uma tabela comparativa indicando quais ferramentas possuíam ou não as funcionalidades especificadas. 4. Resultado e Discussões Na Tabela 1, apresenta a comparação das ferramentas em função das características desejadas. O resultado da análise das funcionalidades existentes em cada ferramenta está representado na Tabela 1 em que buscou identificar as características desejadas para a construção de um jogo educacional. Neste sentido, deve se levar em consideração que os jogos desenvolvidos com as ferramentas devem atender a os requisitos de facilidade de uso(recurso computacional); não exigir robustez de máquina; ser de fácil acesso a todos os interessados, entre outros. Tabela 1 Comparação de funcionalidades das ferramentas. Modelagem e Criação Engine (Motor Gráfico) Colisão/Física Particulas 3D Blender SIM SIM SIM SIM SIM Stencyl NÃO SIM SIM SIM NÃO Cry Engine NÃO SIM SIM SIM SIM Unity SIM SIM SIM SIM SIM Unreal SIM SIM SIM SIM SIM
Baseado na Tabela 1, que mostra as características identificadas e o que cada ferramenta disponibiliza, traça se o cenário de quais as ferramentas atendem a demanda de um projeto de construção de jogo educacional. Neste caso, percebe se que as ferramentas que atendam a todos os requisitos necessários são Blender, Unity e Unreal. Entretanto das três selecionadas, apenas o Blender e a Unreal são totalmente gratuitas. O desafio da seleção de ferramentas está em encontrá las de forma gratuita, de fácil usabilidade, que utilize baixo recurso computacional e que produza o resultado desejado. 5. Conclusão Na seleção de ferramentas deve se levar em consideração fatores além dos relacioandos a manutenção, portabilidade, usabilidade, suporte, entre outros. Por isso, a escolha das ferramentas para desenvolvimento dependem da proposta do jogo e de fatores relacionados a equipe de desenvolvedores, tais como a familiaridade com o material de estudo disponível e o tempo de aprendizado das ferramentas escolhidas. Existe uma infinidade de ferramentas para a criação de jogos, utilizando linguagens de programação C++, Java, Python, entre outras, porém requerem tempo e equipe mais robusta para implementação. Ferramentas de modelagem e renderização onde o aprendizado das linguagens estão embutidas na mesma, fazem com que o desenvolvimento seja extremamente agilizado. Porém, ferramentas gratuitas não só fomentam o mercado de desenvolvimento de jogos, como também auxiliam instituições que estão adentrando agora nele. Por isso, identifica se que as ferramentas atualmente no mercado para a criação de um jogo relacionada a um projeto de jogo educacional seja o Blender e a Unreal Engine. As ferramentas selecionadas não só são completamente gratuitas, mas também pelo grande potencial de trabalhos que podem ser realizados tanto usando uma das ferramentas ou ate mesmo utilizando uma para complementar a outra. Isso porque a capacidade de modelagem no Blender é altissíma, onde essas modelagens e aplicações em 3D podem ser muito bem renderizadas e aplicadas na Unreal Engine que tem um poder gráfico de excelente qualidade tanto nas suas próprias aplicações quanto nas aplicações importadas no pelo Blender. 6. Referências Assis, G. A.; et al. (2006). EducaTrans: um Jogo Educativo para o Aprendizado do Trânsito. CINTEDUFRGS. V. 4 No 2. Barbosa, Laura Monte Serrat. (1998) Projeto de trabalho: uma forma de atuação psicopedagógica. 2.ed. Curitiba: L. M. S. Benin, Max Ricardo, and Saulo Popov Zambiasi. (2010) "Proposta de uma Ferramenta Focada no Ensino do Desenvolvimento de Jogos Eletrônicos." Gil, A. C. (2002) Como elaborar projetos de pesquisa. 4. ed. São Paulo: Atlas.2002. Piaget, J. (1996) Biologia e Conhecimento. 2 ª Ed. Vozes : Petrópolis. Salen, K. e Zimmerman, E. (2012) Regras do jogo: fundamentos do design de jogos: principais conceitos: volume 1, [tradução Edson Furmankiewicz]. - São Paulo: Blucher.
Silva, A. P., H. A. D. Oliveira, e Frère, A., F. (2004) "Desenvolvimento de Jogo Computadorizado para Auxiliar o Letramento de Crianças com Hiperatividade Via Internet." VII Congresso Iberoamericano de Informática Educativa. Sommerville, I. (2003). Engenharia de software. 8ª Ed. V. 6. Pearson Addison Wesley. São Paulo. Tarouco, L. M. R.;, Roland, L. C., Fabre, M-C. J. M., and Konrath, M. L. P. (2004) Jogos Educacionais. CINTED-UFRGS, Novas Tecnologias na Educação. V.2 Nº1.