O documento discute as principais linguagens de programação utilizadas no desenvolvimento de jogos eletrônicos para computadores, web e dispositivos móveis. Apresenta as linguagens C++, Python, Lua, Ruby, Actionscript e Java como algumas das mais usadas, e destaca que a escolha depende do objetivo e da plataforma de destino do jogo. Também aborda ferramentas como Unity e Game Maker que facilitam a criação de jogos.
1. Linguagens de Programação voltadas
ao Desenvolvimento de Jogos
Eletrônicos
Sistemas de Informação – Cesnors
Metodologia Cientifica e da Pesquisa
Prof. Mestre Igor Senger
Grupo: Kelvin S. do Prado, Eduardo Freitas e Mauro André Murari
2. Problema
1. Pode ser utilizada qualquer linguagem de programação
para o desenvolvimento de jogos eletrônicos?
3. Hipótese
1. Qualquer tipo de linguagem de programação pode ser utilizada
para o desenvolvimento de jogos eletrônicos, porem cada uma tem
as suas próprias características e limitações, ou seja, antes de se
começar a desenvolver um jogo eletrônico é necessário traçar o
objetivo ao qual se quer atingir e assim escolher a linguagem de
programação mais adequada para o fim especifico.
4. Problema
2. Pode-se utilizar qualquer tipo de linguagem de programação
para o desenvolvimento de jogos eletrônicos, independente do
hardware, ou da plataforma onde este jogo irá rodar?
5. Hipótese
2. A respeito da segunda questão do problema, a resposta é não,
pois apesar de algumas linguagens de programação serem muito
flexíveis, elas tem suas próprias características que só possibilitam
executá-las em determinados hardwares ou plataformas, assim
sendo, a linguagem de programação a ser utilizada para o
desenvolvimento de um jogo eletrônico, esta diretamente ligada ao
hardware e a plataforma que são indispensáveis para o
funcionamento do jogo.
6. Justificativa
Muitas dúvidas a respeito do tema desenvolvimento de
jogos eletrônicos surgem a quem decide seguir nesta área da
computação. Muitas destas dúvidas envolvem principalmente
as linguagens de programação a serem usadas para o
desenvolvimento do jogo, tornando de grande importância
trabalhos a respeito deste assunto.
Visando buscar um melhor esclarecimento sobre este
assunto, apresentaremos alguns conceitos básicos a respeito das
linguagens de programação mais utilizadas para o
desenvolvimento de jogos eletrônicos.
8. Objetivos
Específicos
Realizar estudos mais aprofundados sobre as
linguagens de programação voltadas ao
desenvolvimento de jogos eletrônicos
para computadores, para web e para
dispositivos móveis.
Buscar apresentar as linguagens mais adequadas
e que mais se identificam para cada objetivo
especifico no desenvolvimento de um jogo.
9. Referencial Teórico
Com o avanço tecnológico dos últimos anos a
profissão de desenvolvedor de jogos eletrônicos é uma das
profissões que vem crescendo na área da informática, mas
esta área de desenvolvimento de jogos eletrônicos não
depende apenas da parte de programação.
Ela pode ser dividida em três partes: a primeira parte
chama-se “game designer”, são os profissionais que criam a
idéia principal do jogo, na segunda são desenvolvidas as
partes gráficas do jogo, como os personagens, os cenários e
os menus, e na terceira parte entram os programadores
responsáveis pela parte funcional do jogo.
10. Referencial Teórico
A denominação “Jogo Eletrônico” envolve vários
estilos de jogos, e vários aparelhos eletrônicos, desde um
simples jogo para celular, até complexos jogos para os vídeo
games de ultima geração.
Neste trabalho procuramos referenciar apenas as
linguagens de programação mais usadas para o
desenvolvimento de jogos eletrônicos para computadores,
para web, e para dispositivos móveis, visando assim passar
um maior entendimento sobre estes respectivos assuntos.
11. Algoritmos
O algoritmo é a base da programação, seu objetivo é
expressar ao computador os passos que o mesmo deve
seguir para a resolução de um ou mais problemas.
Resumindo, um algoritmo é uma seqüência lógica e
bem definida de instruções, que são criadas geralmente para
a resolução de problemas.
12. Linguagens de Programação
As linguagens de programação são o meio utilizado pelos
humanos para expressarem comandos aos computadores.
O computador só entende linguagens binárias, ou 0 e 1,
portanto a principal função das linguagens de programação é
simplificar e traduzir o código binário.
Dentre as linguagens de programação mais conhecidas
podemos citar: COBOL, Basic, Lua, Pascal, Actionscript, C, C++,
Java, Perl, PHP, Python, Ruby, entre outras.
As linguagens de programação podem ser divididas em
dois níveis: linguagem de programação de baixo nível e linguagem
de programação de alto nível.
13. Linguagem de Baixo Nível
As linguagens de programação de baixo nível podem
ser assim chamadas pois elas trabalham diretamente com o
hardware do computador, mais especificamente com os
registradores do processador. Elas se diferem muito das
linguagens humanas.
14. Linguagem de Alto Nível
As linguagens de programação de alto nível são o
oposto das linguagens de baixo nível, pois elas se assemelham
mais com a linguagem humana, e se distanciam mais da
linguagem de código de máquina.
Alguns exemplos são: Pascal, C/C++, Java e Lua.
15. Desenvolvimento de Jogos
Eletrônicos para Computadores
A computação gráfica também evoluiu a níveis que a
alguns anos atrás eram inimagináveis.
Com isso a programação dos jogos eletrônicos acabou se
tornando muito mais complexa.
A seguir apresentaremos algumas das linguagens de
programação mais utilizadas nos dias de hoje para o
desenvolvimento de jogos eletrônicos.
A indústria dos jogos eletrônicos tem crescido nos
últimos anos, e se tornou uma das maiores do mundo,
principalmente nos Estados Unidos.
16. Linguagem C++
A linguagem de programação C++ é muito poderosa,
pois ela combina características das linguagens de baixo e de
alto nível, podendo manipular os dados direto na memória,
mas com uma complexidade menor do que a linguagem de
máquina.
A linguagem C++, surgiu a partir da linguagem C, para
aumentar o seu potencial e adicioná-la a orientação a objetos e
conceitos de classes, porem as duas são bem diferentes, um
programa escrito em C nem sempre será compilado em C++
sem erros, então deve-se vê-las como duas linguagens
diferentes.
17. Linguagem C++
Atualmente a linguagem C++ é a líder no mercado de
desenvolvimento de jogos eletrônicos comerciais para
computadores, cerca de 90% dos jogos são feitos com a
linguagem C++, isso tudo pela sua flexibilidade e porque ela
consegue manipular os dados direto da memória se tornando
assim uma linguagem muito poderosa e rápida.
18. Linguagem Python
O Python é uma linguagem de programação
interpretada, orientada a objetos, e possui uma sintaxe
simples e clara, assim sendo é uma linguagem de alto nível.
Muitos optam pela linguagem de programação
Python por ela ser código aberto, ou open source.
Alem disso o Python possui uma biblioteca padrão
muito poderosa, e atualmente é usado em diversas áreas da
computação gráfica.
19. Linguagem Lua
A Lua é uma linguagem de programação totalmente
brasileira e gratuita, foi criada por desenvolvedores da Pontifícia
Universidade Católica (PUC) do Rio de Janeiro. Assim como o
Python a Lua também é open source.
Devido a sua extensibilidade, a Lua é frequentemente usada
como o cimento que une aplicações e linguagens diversas que
tenham interface com C. Da mesma forma, Lua pode ser usada
como uma linguagem alto nível de scripting.
Ela é bastante apreciada pelos programadores pois se
assemelha muito a linguagem Python e Ruby.
20. Linguagem Lua
Vários jogos famosos já foram desenvolvidos com o auxilio
da linguagem Lua, podemos citar o jogo Fable 2 e World of
Warcraft.
Fable 2 World of Warcraft
21. Linguagem Ruby
A linguagem de programação Ruby, é interpretada e
orientada a objetos.
Ela também é altamente portável, isso significa que
um programa feito em linguagem Ruby, pode ser executado
em diversas plataformas.
A Ruby foi criada para ser usada como linguagem de
script e com gerenciamento de memória automático, sendo
assim ela aloca pequenos blocos de memória, para que nunca
falte memória enquanto um script estiver rodando.
Esta linguagem também é open source, e pode ser
comercializada sem nenhum custo.
22. Desenvolvimento de jogos
para Web
Com o avanço da tecnologia web e o sucesso dos
jogos eletrônicos que rodam direto no navegador, a demanda
por esta arquitetura de jogos aumentou muito.
Algumas linguagens e ferramentas são mais
especificas para o desenvolvimento de jogos eletrônicos para
web, como por exemplo, o Adobe Flash, que é um software
muito usado hoje em dia para criação de jogos e animações
para internet. Ele usa a linguagem de programação
Actionscript que é orientada a objetos, e é executada em uma
maquina virtual.
23. Adobe Flash
O Adobe Flash é um software que serve
principalmente como ferramenta para a criação de animações
e o desenvolvimento de jogos para a web. Ele suporta
imagens e vídeos que podem rodar diretamente no navegador
web, apenas com o auxilio de um plugin gratuito chamado
Flash Player. Este software usa a linguagem de programação
Actionscript, que é muito fácil e rápida, alem de muito
poderosa.
O Adobe Flash era desenvolvido pela empresa
Macromedia, que foi adquirida pela Adobe Systems em 2005.
O Flash é uma ferramenta tão poderosa que até sites
inteiros podem ser desenvolvidos com ele.
24. Adobe Actionscript
Actionscript é uma linguagem de programação
orientada a objetos da plataforma Adobe Flash, é usada
principalmente para a criação de aplicações para a internet.
O Actionscript foi criado como uma linguagem de
script desenvolvida para o Macromedia Flash.
A versão mais atual é o Actionscript 3.0 que teve
vários melhoramentos, inclusive a reestruturação com uma
nova maquina virtual mais rápida.
25. Desenvolvimento de jogos para
dispositivos móveis
A alguns anos atrás os dispositivos móveis eram
definidos apenas pelos celulares, e estes eram totalmente
fechados para novos aplicativos ou jogos, seu objetivo
principal era apenas a realização de chamadas.
Com o avanço na tecnologia dos dispositivos móveis,
surgiram outros aparelhos, como tablets, PDA’s, smartphones,
consoles portáteis, e o próprio celular com muitas inovações, o
objetivo principal destes aparelhos mudou, não era mais apenas
a realização de chamadas, mas sim o entretenimento em geral.
26. Desenvolvimento de jogos para
dispositivos móveis
Com este crescimento estrondoso na venda destes
dispositivos móveis, mais e mais jogos foram e são
desenvolvidos com as características especificas para estas
plataformas.
Cada vez mais os dispositivos móveis estão
aperfeiçoando a sua arquitetura, e hoje já podem ser
executados jogos 3D em vários modelos de celulares, tablets
entre outros dispositivos.
Uma linguagem de programação bastante usada para o
desenvolvimento de jogos eletrônicos nos dispositivos móveis,
especialmente para celulares, é a linguagem de programação
Java, com o auxilio da ferramenta Java Platform Micro Edition
(J2ME).
27. Java
Antes de falarmos sobre a ferramenta J2ME,
precisamos saber alguns conceitos básicos sobre a linguagem
de programação Java, já que esta ferramenta se baseia nela.
O Java é uma linguagem muito poderosa, e serve tanto
para o aprendizado aos iniciantes, quanto para programadores
experientes. Foi desenvolvido na década de 90 pela empresa
Sun Microsystems, e pode ser baixado gratuitamente no site do
desenvolvedor.
A linguagem Java foi projetada para ser orientada a
objetos, portável, ter vários recursos de rede, ser segura, ter a
sintaxe parecida com C/C++ e ser relativamente simples.
28. Java Platform Micro Edition
O Java Platform Micro Edition, ou J2ME é uma
ferramenta desenvolvida pela empresa Sun Microsystems que
foi adquirida pela empresa Oracle em 2009, J2ME é baseada
na linguagem de programação Java, e é uma ferramenta
voltada para o desenvolvimento de aplicativos para
dispositivos móveis.
29. Makers
Para quem esta começando na área de desenvolvimento
de jogos existem alguns softwares que facilitam a criação de
jogos eletrônicos para computador.
Eles até utilizam algumas linguagens de programação
para implementar o jogo, mas você não precisa saber programar
para criar o seu próprio game. Alguns softwares como RPG
Maker, permitem a criação de jogos Role-playing game (rpg)
em 2D, ele usa a linguagem de programação Ruby, mas não é
necessário saber programar, você pode criar seu jogo apenas
movendo os objetos e criando eventos para os personagens.
30. Makers
Outro software bastante conhecido é o Game Maker, ele
usa a linguagem Game Maker Language (GML), que é própria
do Game Maker, é uma linguagem muito simples e é muito
parecida com as outras linguagens de programação.
O Game Maker é feito em Delphi por este motivo só
roda na plataforma Windows, e a sua versão completa é paga,
apenas a versão de demonstração pode ser baixada
gratuitamente. Mas diferente do RPG Maker, com o Gamer
Maker é possível criar tanto jogos em 2D como jogos em 3D.
31. Jogos Educativos
Juntamente com toda essa inclusão digital surgiram os
jogos educativos, visando um melhor aprendizado da parte
dos alunos sobre um respectivo assunto acadêmico. Os jogos
eletrônicos educativos estão se implantando cada vez mais
nas escolas, principalmente nas de ensino fundamental.
Já existem até campeonatos de jogos eletrônicos
educativos dentro de algumas escolas, que incentivam os
alunos a jogarem concorrendo a prêmios, mas sem esquecer
do principal objetivo que é o aprendizado.
32. Metodologia
A metodologia utilizada no desenvolvimento deste
trabalho foi o método de pesquisa bibliográfica, que tem
como objetivo conhecer diferentes formas de contribuição
cientifica que se realizaram sobre um determinado assunto.
Concluímos que, os dados apresentados neste
trabalho foram obtidos em bibliotecas e em acervos virtuais
na internet, onde podem ser encontrados para visualização
de todos.
33. Resultados Esperados
Com este projeto de pesquisa esperamos abrir novas
portas para o ramo de desenvolvimento de jogos eletrônicos
na nossa região, também procuramos mostrar como o
desenvolvimento de um jogo eletrônico pode ser um
processo complexo e por isso necessita de profissionais
capacitados nesta área, assim sendo, incentivamos as
universidades da região a buscarem trazer cursos técnicos e
de graduação para formarem profissionais capacitados e que
possam se diferenciar no mercado de trabalho, sendo que o
ramo de desenvolvimento de jogos eletrônicos cresce mais a
cada dia.
Fim