Ir para conteúdo
Entre para seguir isso  
Gpwjhlkdcf

[Parte 0] Como fazer um jogo do zero!

Recommended Posts

Gpwjhlkdcf    21
Gpwjhlkdcf

Como fazer um jogo do zero!

Parte 0: O que você precisa para fazer um jogo

 

E quando eu digo "fazer um jogo", quero dizer programá-lo do zero, e não montar Lego em uma engine pronta!

 

Linguagem de Programação

 

Antes de mais nada, você obviamente precisa ter familiaridade com uma linguagem de programação. Você pode fazer um jogo em virtualmente qualquer linguagem de programação, mas algumas são mais "preparadas" do que outras. Você não precisa saber C++ ou Java para fazer um jogo, não é porque a maioria dos jogos é feito em uma linguagem ou em outra que você precisa usar elas. Minhas linguagens preferidas são C++, Lua e Python. Outras linguagens bastante usadas incluem Java, Ruby, ActionScript, JavaScript, C#, entre outras. (Novamente: você não precisa necessariamente usar uma destas, qualquer linguagem de programação é apta para desenvolver um jogo!)

 

Se você não tem experiência nenhuma, nunca tocou em uma linguagem de programação ou nem mesmo sabe o que é ou quais existem, recomendo que comece com alguma linguagem de fácil aprendizado, como Lua ou Python, ao invés de pular direto para uma linguagem como C++. Mais tarde, quando você estiver um pouco mais familiarizado com a lógica de um código, fica mais fácil aprender outras linguagens.

 

Bibliotecas

 

Se você tem um mínimo de experiência em programação, deve saber que uma biblioteca é só um conjunto de funções empacotadas em um lugarzinho, prontas para serem usadas. Você pode, é claro, fazer um jogo sem usar nenhuma biblioteca: apenas fazendo chamadas de sistema, mas isso tornaria tudo extremamente, infinitamente mais complicado! As bibliotecas (quando digo bibliotecas, também incluo APIs, frameworks, et cetera) fazem muitas coisas automaticamente para você, como abrir uma janela e desenhar uma imagem nela, por exemplo.

 

Vários tipos de bibliotecas são ou podem ser necessários. Não listarei bibliotecas específicas, pois isso depende muito da linguagem sendo usada, mas será material para outro tópico! Vou, contudo, listar os tipos de bibliotecas que você vai/pode precisar em um jogo:

  • Áudio
  • Estruturas de Dados
  • Gráficos
  • Inteligência Artificial
  • Interface
  • I/O
  • Matemática
  • Multimídia
  • Networking
  • Pathfinding
  • Portabilidade

 

Recursos

Existem muitos jogos ótimos feitos apenas com texto (Dwarf Fortress, MUDs), mas geralmente um jogo contém, no mínimo, algumas imagens. Para jogos mais complexos, você precisará de uma ampla gama de texturas, efeitos sonoros, músicas, diálogos, e até mesmo modelos tridimensionais e animações. Se você sabe desenhar, tocar algum instrumento, ou até mesmo modelagem 3D, ótimo! Você pode desenvolver seus próprios recursos! Mas geralmente fazer um jogo sozinho é maçante e demanda muito tempo (você perderá muito tempo desenhando, depois fazendo a música, depois modelando, e ainda tem que arrumar tempo para desenvolver o código!). Por isso é interessante que você se reúna à algumas pessoas com talento em determinadas áreas. Enquanto seu colega faz algumas sprites, você pode ir testando o seu código com elas!

 

Não importa de onde você tire estes recursos. O importante é que você os tenha à disposição. Existem vários websites que disponibilizam recursos gratuitamente na internet, basta dar uma procurada! Mas nada de violar licensas e copyright, em? Respeite os autores!

 

Paciência

Um jogo não é feito de um dia pro outro. Alguns jogos relativamente simples podem demorar até meses para ficarem prontos. Tenha paciência, faça uma coisa de cada vez.

 

Organização

Conforme seu jogo cresce, as coisas começam naturalmente a se embaralhar. Se você estiver fazendo um projeto grande, é bom aprender à documentá-lo, principalmente se não está desenvolvendo o código sozinho!

 

Não tente fazer o impossível

Se você está começando agora, aprenda à arriscar: tente fazer coisas que você ainda não sabe como funciona, pois assim você terá que pesquisar e aprender. Você não aprenderá nada fazendo o que já sabe. Mas não se arrisque demais, tenha em mente o que você pode fazer e o que é completamente impossível. Você não começará seu aprendizado tentando fazer um MMORPG 3D. Comece pequeno.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Fixthow    33
Fixthow

Amei cara, muito explicativo e não fico maçante o texto. E concordo realmente com isso, não só em questão de criação de jogos mas conceitos em várias áreas, é bom sempre ter uma ótima administração de conteúdos, capacidades e tempo.

 

Super liked pequena raposa

Compartilhar este post


Link para o post
Compartilhar em outros sites
Kuma Bear    33
Kuma Bear

O texto está tão ótimo, que te da até uma sensação gostosa de ler ele :)

 

Você abordará alguma linguagem especifica, se sim, qual?

 

bom trabalho fox

<3

Editado por bolotabunito

Compartilhar este post


Link para o post
Compartilhar em outros sites
Conde2    0
Conde2

XXXXX

Editado por Conde2

Compartilhar este post


Link para o post
Compartilhar em outros sites
Gpwjhlkdcf    21
Gpwjhlkdcf
O texto está tão ótimo, que te da até uma sensação gostosa de ler ele :)

 

Você abordará alguma linguagem especifica, se sim, qual?

 

bom trabalho fox

<3

 

Vou tentar deixar tudo meio language-agnostic, mas é inevitável que eu mostre código, então onde tiver código será provavelmente Lua ou Python, porque são fáceis de entender até pra quem nunca viu um código em nenhuma das duas, e a maioria que vai ler o "tutorial" não deve estar familiarizado com programação. Mas posso misturar algumas coisas com C++, não sei, vai depender do público.

 

Gostei bastante e vejo essa nova seção e idéias como um grande incentivo.

Na minha opinião acho interessante para quem esta começando se apoiar em uma engine, elas foram feitas para ajudarem as pessoas a desenvolverem projetos de modo mais fácil e agradável então não vejo a porque dispensá-las.

Vou estar lendo suas dicas raposa, espero que continue elas !!

 

Porque essa seção é sobre programação de jogos, não sobre produção. As engines geralmente vêm com tudo acoplado em ferramentas, com quase ou nenhuma programação envolvida. A ideia dessa seção é capacitar e discutir sobre programação. Não desincentivo o uso de engines, são boas para produzir jogos, mas a maioria não serve para aprender programação.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Dave Glorft    0
Dave Glorft

Concordo com o bolota, ler um texto seu é um deleite, e aliado a esse conteúdo objetivamente enriquecedor que venho notando, vejo que esta seção promete. À espera dos próximos capítulos.

Compartilhar este post


Link para o post
Compartilhar em outros sites
dalvorsn    46
dalvorsn

Ta ficando ótima a seção!

Sempre que possivel estarei acompanhando aqui :D

Compartilhar este post


Link para o post
Compartilhar em outros sites
Marill    0
Marill

Excelente, Skyen! O tópico ficou muito bem estruturado e muito bem explicado. Continue com o ótimo trabalho!

 

REP++

 

Cya

Compartilhar este post


Link para o post
Compartilhar em outros sites
felzan    0
felzan

Muito legal, to querendo aprender C++ mesmo, já tenho algumas ideias de programas (bem simples mesmo).

Esperando os próximos :D

Compartilhar este post


Link para o post
Compartilhar em outros sites
Carvalhux    0
Carvalhux

Muito Bom! Parabéns.. Quero ver mais aulas ai eim... xD

Compartilhar este post


Link para o post
Compartilhar em outros sites
Haxy    0
Haxy

Bem escrito o artigo, gostoso de ler, mas não tem conteúdo nenhum... =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
Entre para seguir isso  

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×