Este tutorial foi criado com o intuito de ensinar os passos necessários para todos aqueles que pretendem criar um jogo.
Antes de começarmos a programar, são necessários muitos passos, a maioria com lápis e papel, e é aí que começamos.
A IDEIA
Não podemos ter um jogo se não tivermos ideias. O principal é termos a ideia para o jogo. Podemos nos basear em histórias antigas, ou histórias que tenhamos ouvido, ou podemos criar a nossa própria história.
Podemos ainda pensar por exemplo em recriar um jogo que jogávamos no tabuleiro quando éramos mais novos.
Numa folha de papel escrevemos quantas ideias nos vierem à cabeça. Se for uma equipe, faz-se um “Brainstorm”, isto é, todos chutam ideias em conjunto, tudo o que vier à cabeça é escrito num papel. No final olham-se para todas as ideias e sozinho ou em grupo escolhe-se a melhor.
O CENÁRIO
Toda a história se desenrola num cenário. Nesta fase vamos desenhar o cenário de jogo. Novamente numa folha de papel fazem-se esboços sobre o cenário, como vai ficar, como o jogador o vai ver. Podemos até procurar imagens reais ou tirar fotos para juntar ao mesmo.
AS PERSONAGENS
Provavelmente o jogo terá personagens. Se não tiver, então deverá ter objectos, naves, animais ou outros. Desenhe-os também numa folha de papel.
A AÇÃO
O jogo tem objectivos e regras, e segue um rumo. Com a ajuda de um fluxograma, em papel ou no computador, represente essas regras. Não podemos esquecer todas as fases em que se ganham ou perdem vidas, como funcionam o esquema de pontuação, os níveis, a dificuldade, o querer saír do jogo, gravar ou retomar um jogo, começar de novo, etc.
SONS E MÚSICA
Um jogo não fica completo sem música e sem sons. Se temos jeito para a música, podemos sempre fazer uma música original e guardar em partitura ou então gravamos num formato áudio conhecido.
Os sons deverão estar homogéneos e também gravados individualmente em formatos digitais.
Se usarmos uma música conhecida, temos que ter cuidado com os direitos de autor e ver se é necessário pagar algum tipo de direitos.
Existem alguns editores bons e até mesmo gratuitos para criarmos as nossas músicas:
MuseScore
Preço:Grátis Pautas:Sim Midi:Sim Teclado: Não
QuickScore Elite
Preço:99$ Pautas:Sim Midi:Sim Teclado: Sim
Finale PrintMusic
Preço:120$ Pautas:Sim Midi:Sim Teclado: Sim
GVox Encore
Preço:400$ Pautas:Sim Midi:Sim Teclado: Sim
MusicTime Deluxe
Preço: 120$ Pautas:Sim Midi:Sim Teclado: Sim
Mozart
Preço:110€ Pautas:Sim Midi:Sim
MusicMasterWorks
Preço:35$ Pautas:Sim Midi: Sim Teclado: Sim
NoteWorthy Composer
Preço:49$ Pautas:Sim Midi: Sim Teclado: Sim
Avid Sibelius
Preço:549€ Pautas:Sim Midi: Sim Teclado: Sim
MagicScoreMaestro
Preço:80$ Pautas:Sim Midi: Sim Teclado: Sim
GRÁFICOS
Agora que temos a ideia, o cenário e as personagens, precisamos de as passar para o computador. Se não temos orçamento para software, então o melhor é utilizarmos uma aplicação como o Paint, Paint.NET ou Gimp se precisarmos de imagens em 2D. Se tivermos que utilizar 3D, então aí precisamos de um editor 3D (Blender,anim8or, 3DCrafter) e de um render como por exemplo o PovRay.
Se tivermos algum orçamento, é aconselhável utilizar por exemplo o Photoshop ou o PaintShop Pro para imagens 3D, e para 3D ferramentas como o Rhino ou 3DStudio Max são os melhores.
É claro que existem muitas outras aplicações, e que fazem por exemplo animação. É uma questão de experimentar.
MOTOR DE JOGO
Uma das partes mais importantes, se não a mais importante é o motor de jogo. Existem motores de jogos grátis e outros pagos com valores a partir dos 100€ até aos 10,000€. Alguns apenas funcionam em determinadas plataformas, e outros são multiplataforma, permitindo que um jogo realizado por nós possa ser jogado por exemplo em PC ou Xbox mas também em Android, iPhone ou Wii.
Temos que então fazer um quadro comparativo para podemos escolher o nosso motor.
Utilizar um motor completo vai com certeza limitar o nosso jogo, e não conseguirmos fazer exactamente como gostaríamos. Uma forma de dar a volta a isso será criamos o nosso próprio motor de jogo utilizando uma linguagem de programação que estaríamos já habituados a utilizar.
Avançemos então já com uma tabela comparativa para podermos escolher o nosso motor:
- Andorra2D Standalone
elphi Custo: Grátis Scripts:- Motor:2D/3D Dificuldade: Médio Plataformas: PC
- App Game Kit Standalone: C++ Custo: 112$ Scripts: Basic Motor:2D Dificuldade: Médio PC Plataformas: Android ,Mac ,iPhone
- appMobi Xdk Standalone: Html5 Custo: 99$ Scripts: Javascript Motor:2D Dificuldade: Médio Plataformas: PC , Android, iPhone , X
- Asphire Standalone: Delphi Custo: Grátis Scripts: - Motor:2D/3D Dificuldade: Médio Plataformas: PC, iPhone
- Arc Engine Standalone: C# Custo: Grátis Scripts: - Motor:2D Dificuldade: Médio Plataformas: PC
- Axiom 3D Standalone: C# Custo: Grátis Scripts: - Motor:3D Dificuldade: Médio Plataformas: PC, Xbox
- Baltie SGP Standalone: C# Custo: 25$ Scripts: - Motor:2D/3D Dificuldade: Fácil Plataformas: PC
- Blender Game Engine Standalone: Sim Custo: Grátis Scripts: Phyton Motor:3D Dificuldade: Médio Plataformas: PC
- Blitz3D Standalone: Basic Custo: 100$ Scripts: OpenGl Motor:3D Dificuldade: Médio Plataformas: PC
- BlitzMax Standalone: Basic Custo: 80$ Scripts: Motor:2D Dificuldade: Médio Plataformas: PC, Mac, Linux
- C4 Standalone: C++ Custo: 250$ Scripts: Motor:3D Dificuldade: Difícil Plataformas: PC, Mac
- Cast II Standalone: Pascal Custo: Grátis Scripts: - Motor:2D/3D Dificuldade: Difícil Plataformas: PC
- Clanlib Standalone: C++ Custo: Grátis Scripts: Motor:2D Dificuldade: Difícil Plataformas: PC, Mac, Linux
- Cocos 2D Standalone: Html5 Custo: Grátis Scripts: Javascript Motor:2D Dificuldade: Médio Plataformas: Web
- Construct 2 Scirra Standalone: Html5 Custo: 79$/365$ Scripts: Motor:2D Dificuldade: Fácil Plataformas: Web
- Corona SDK Standalone: Sim Custo: 150€/ano Scripts: Lua Motor:2D/3D Dificuldade: Médio Plataformas: Android, iPhone
- CPal3D Standalone: C++ Scripts: Motor:3D Dificuldade: Médio Plataformas: PC, Xbox
- Cry Engine Custo: 20% Scripts: Dificuldade: Difícil Plataformas: PC, Xbox
- Crystal Space Standalone: C++ Custo: Grátis Scripts: - Motor:3D Dificuldade: Difícil Plataformas: PC, Mac , Linux
- Darkbasic Standalone: Sim Custo: 29€ Scripts: Basic Motor:2D/3D Dificuldade: Fácil Plataformas: PC
- Darkflow Standalone: Html5 Custo: 5$ Scripts: Motor:2D Dificuldade: Fácil Plataformas: PC, iPhone, Web
- DelphiX Standalone: Delphi Custo: Grátis Scripts: - Motor:2D Dificuldade: Fácil Plataformas: PC
- DEngine Standalone: C# Custo: Grátis Scripts: - Motor:2D Dificuldade: Fácil Plataformas: PC, Xbox
- DirectX Standalone: C++ Custo: Grátis Scripts: - Motor:2D/3D Dificuldade: Difícil Plataformas: PC
- DragonFire SDK Standalone: Sim Custo: 49$ Scripts: C++ Motor:2D Dificuldade: Médio Plataformas: iPhone
- DXStudio 3.1 Standalone: Sim Custo: 120€ Scripts: Javascript Motor:2D/3D Médio Plataformas: PC , Web
- EDGELIB Standalone: C++ Custo: Grátis** Scripts: - Motor:2D/3D Dificuldade: Difícil Plataformas: PC , Android, Mac, iPhone , Linux
- Esenthel Custo: 150$ Scripts: Motor:3D Dificuldade: Médio Plataformas: PC, Android, Mac, iPhone
- Flatredball Standalone: C# Custo: Grátis Scripts: Motor:2D/3D Dificuldade: Médio Plataformas: PC, Xbox, Android iPhone X
- Flixel Standalone: Actionscript Custo: Grátis Scripts: - Motor:2D Dificuldade: Médio Plataformas: Web
- Gamebryo Standalone: C++ Custo: 30.000$* Scripts: Motor:3D Dificuldade: Médio Plataformas: PC , Xbox Wii,Linux
- Gamecore Standalone: C++ Custo: Grátis* Scripts: - Motor:3D Dificuldade: Difícil Plataformas: PC, Mac
- Game Editor Standalone: Sim Custo: 99$/ano , 1499$/ano Scripts: C++ Motor: 2D Dificuldade: Fácil Plataformas: PC, Mac, iPhone, Linux, Win CE
- Gamekit Standalone: C++ Custo: Grátis Scripts: C++, Lua Motor:3D Dificuldade: Difícil Plataformas: PC , Mac, iPhone Linux
- GameMaker Standalone: Sim Custo: 40$ Scripts: - Motor:2D/3D Dificuldade: Fácil Plataformas: PC
- GameMaker Standalone: HTML5 Sim Custo: 99$ Scripts: Javascript Motor:2D/3D~ Dificuldade: Fácil Plataformas: Web
- Games Factory Standalone: Sim Custo: 49€ Scripts: - Motor:2D Dificuldade: Fácil Plataformas: PC , iPhone*
- GameSalad Standalone: Sim Custo: 499$/ano Scripts: Motor:2D Dificuldade: Fácil Plataformas: Android, Mac, iPhone,X
- GameStudio Standalone: Delphi/C# Custo: 89€ Scripts: – Motor:3D Dificuldade: Médio Plataformas: PC
- Geex Standalone: C# Custo: 5€/ano Scripts: Motor:2D Dificuldade: Médio Plataformas: PC, Xbox
- GL Scene Standalone: Pascal Custo: Grátis Scripts: - Motor:3D Dificuldade: Médio Plataformas: PC
- IG Maker Standalone: Sim Custo: 60$ Scripts: - Motor:2D Dificuldade: Fácil Plataformas: PC, Xbox
- Impact Standalone: Html5 Custo: 49$ Scripts: Javascript Motor:2D Dificuldade: Fácil Plataformas:Web
- Infernal Engine Scripts: Motor:3D Dificuldade: Difícil Plataformas: PC , Xbox, Wii
- iTorque2D Standalone: Sim Custo: 149$ Scripts: C++ Motor:2D Dificuldade: Fácil Plataformas: Mac, iPhone
- jMonkey Engine Standalone: Java Custo: Grátis Scripts: - Motor:2D Dificuldade: Médio Plataformas: PC, Android, Web , Linux
- Konsolscript Standalone: Sim Custo: Grátis Scripts: Custom Motor:2D Dificuldade: Fácil Plataformas: PC , Linux
- Marmalade Standalone: C++ Custo: 134$/ano Scripts: C++ Motor:3D Dificuldade: Médio Plataformas: PC Android Mac iPhone
- Mominis Standalone: Sim Custo: Grátis Scripts: Motor:2D Dificuldade: Fácil Plataformas: Android
- Monogame Standalone: C# Custo: Grátis Scripts: C# Motor:2D Dificuldade: Difícil Plataformas: PC Android Mac iPhone Linux
- Love2D Standalone: Lua Custo: Grátis Scripts: - Motor:2D Dificuldade: Médio Plataformas: PC , Mac, Linux
- Moai Standalone: Lua Custo: Grátis* Scripts: Lua Motor:2D Dificuldade: Difícil Plataformas: PC, Android, Mac,iPhone, Linux
- Multimedia Fusion Standalone: Sim Custo: 99€ Scripts: - Motor:2D Dificuldade: Fácil Plataformas: PC, iPhone*
- Neoaxis Standalone: Sim Custo: 95$ * Scripts: C# Motor:3D Dificuldade: Médio Plataformas: PC, Android~ , Mac, iPhone~, Web, Linux
- Nge Standalone: C++ Custo: Grátis Scripts: - Motor:3D Dificuldade: Difícil Plataformas: PC
- Ogre3D Standalone: C++ Custo: Grátis Scripts: - Motor:3D Dificuldade: Difícil Plataformas: PC, Mac, Linux
- Ox Game Engine Standalone: C# Custo: Grátis Scripts: - Motor:3D Dificuldade: Médio Plataformas: PC, Xbox
- Pygame Standalone: Phyton Custo: Grátis Scipts: Phyton Motor: 2D Dificuldade:Médio Plataformas: PC, Mac, Linux,WinCE
- Rage3D Custo: Grátis Scripts: - Motor:3D Dificuldade: Difícil Plataformas: PC
- Reactor 3D Scripts: Dificuldade: Difícil Plataformas: PC, Xbox, Mac, Linux
- RPG Maker VX Standalone: Sim Custo: 60$ Scripts: - Motor:2D Dificuldade: Fácil Plataformas: PC
- S2 Engine Standalone: Sim Custo: 186€* Scripts: Motor:3D Dificuldade: Médio Plataformas: PC
- SDL Standalone: C,C++,Pascal Custo: Grátis Scripts: - Motor:3D/3D Dificuldade: Difícil Plataformas: PC, Linux
- Shiva3D Standalone: Sim Custo: 169€ Scripts: C++ Motor:3D Dificuldade: Médio Plataformas: PC Android Mac iPhone Web Wii Linux
- Silverlight MMORPG Standalone: C# Scripts: C# Motor:3D Dificuldade: Médio Plataformas: PC Web
- SpacePort Custo: Grátis* Scripts: Javascript Motor:2D Dificuldade: Médio Plataformas: PC Android Mac iPhone Web
- Stencyl Standalone: Sim Custo: 149$/ano Scripts: ObjectiveC Motor:2D Dificuldade: Fácil Plataformas: PC Android* Mac iPhone Web*
- SunBurn XNA Standalone: C# Custo: 150$* Scripts: Motor:3D Dificuldade: Difícil Plataformas: PC Xbox
- Terra Engine Standalone: Delphi Custo: Grátis* Scripts: Motor:3D Dificuldade: Médio Plataformas: PC, Android, Mac, iPhone, Linux
- Torque2D Standalone: Sim Custo: 128$ Scripts: C++ Motor:2D Dificuldade: Fácil Plataformas: PC
- Torque3D Standalone: Sim Custo: 179$ Scripts: C++ Motor:3D Dificuldade: Médio Plataformas: PC, Web
- Truevision 3D Standalone: C#,Delphi Custo: 150$ Scripts: Motor:3D Dificuldade: Médio Plataformas: PC
- Unity 3D Standalone: Sim Custo: Free Scripts: C++ Motor:3D Dificuldade: Médio Plataformas: PC
- Unity 3D Pro Standalone: Sim Custo: 1050€ Scripts: C++ Motor:3D Dificuldade: Médio Plataformas: PC, Android*, iPhone*, Web*, Wii*
- Unreal Standalone: Sim Custo: 99$ * Scripts: - Motor:3D Dificuldade: Médio Plataformas: PC, Android
- Visual 3D Standalone: C# Custo: 350$ Scripts: Motor:3D Dificuldade: Médio Plataformas: Xbox
- VRender Standalone: C++ Custo: Grátis Scripts: Motor:3D Dificuldade: Difícil Plataformas: PC, Xbox, Android, Mac, iPhone, Wii, Linux
- WebGL Standalone: Javascript Custo: Grátis Scripts: Javascript Motor:3D Dificuldade: Difícil Plataformas: iPhone
- XNA Standalone: Visual Studio Custo: 99$/ano Scripts: C# Motor:2D/3D Dificuldade: Difícil Plataformas: PC. Xbox
* Com um custo adicional , ** Com banner, ~ Planeado
Escolher entre tantos motores não é fácil. Em primeiro lugar devemos pensar nos custos, se pensarmos em publicar. No entanto a maioria dos motores providenciam uma versão de teste talvez com um logotipo por cima e com menos funcionalidades.
As plataformas de destino também são importantes de olhar. Alguns motores permitem desenvolver numa plataforma e exportar para outras, alcançando assim um maior mercado de potenciais clientes.
Se escolhermos um motor grátis ou muito barato podemos ter a infelicidade de ver o motor estagnar e não serem lançadas novas versões, o que a longo prazo nos traria acréscimo de trabalho se tivermos de mudar de motor.
Se tivermos tempo e paciência, podemos sempre fazer um motor de raíz, utilizando linguagens como o C++, Java ou outras.
Como começar
Não devemos agarrar logo no motor que escolhemos e começar a programar. Se queremos ter um jogo de alta qualidade, e se precisamos de testar a ideia e mostrar à equipa, seria boa ideia utilizar uma ferramenta RAD para uma primeira versão do jogo, mesmo que não utilizemos qualquer motor.
Podemos assim testar o jogo, ver se é funcional, e se cativa. Os gráficos e o movimento vem depois.
Como ferramentas RAD podemos enumerar algumas como o Delphi, o C++ Builder, o Visual Basic, o Visual Studio .NET, ou o SharpDevelop.
Fase de testes
Nesta fase devemos utilizar o máximo de pessoas para os testes. Nem toda a gente joga da mesma forma, e muitos dos bugs deverão ser detectados e corrigidos nesta fase.
Devemos ainda testar o jogo em diversos sistemas diferentes, se houver possibilidade de diferente hardware. Se o jogo aceitar joysticks, rato, touch, pistolas ou outros periféricos, devemos também testar a ver se o jogo responde da forma pretendida.
Publicação
Por último mas não menos importante temos a publicação e venda do nosso jogo.
E o melhor é começar por jogos simples e baratos, como por exemplo para PC ou Mobile.
A publicação em consolas como a Xbox 360, Wii ou Playstation requer um longo caminho e também custos acrescidos. A criação de jogos para estas plataformas obriga a um nível de qualidade mínimo, em que os fabricantes vão avaliar o nosso jogo e atribuír uma pontuação. Se não atingirmos os mínimos poderemos ver o jogo recusado e teremos que começar tudo de novo.
Existem plataformas na internet para difusão dos nossos jogos.
O quadro seguinte ilustra algumas destas plataformas e custos associados:
Addicting Games Custo: Grátis Plataformas: Android , iOS, Outros
Android Market Custo: Grátis Plataformas: Android
BigFishGames Custo: Grátis Plataformas: PC, iOS ,Web
BigPoint DevLounge Custo: Grátis Plataformas: PC, Web
Club Casual Games Custo: Grátis Plataformas: PC,Web
Em-Publish Android Plataformas: iOS
FlashGame Licence Plataformas: Flash
GameHouse Custo: Grátis Plataformas: PC, Android , iOS , Web, Outros
GameTunnel Custo: Grátis Plataformas: PC
Intel AppUp Custo: Grátis Plataformas: PC ,Web ,Outros
iTunes Custo: 99$/ano Plataformas: iOS
Microsoft AppHub Custo: 99$/ano Plataformas: Xbox Live
Microsoft Casual Games Custo: Grátis Plataformas: XBOX Live
Se quisermos vender em formato físico, então podemos gravar o jogo num CD, DVD ou PEN, colocar numa embalagem de cartão ou outra, e então colocar em lojas de venda de jogos.
E boa sorte na criação dos jogos.