Ir ao conteúdo
  • Cadastre-se

C++ Quero programar Jogos em C++


JimSpecial Edi

Posts recomendados

Eae galera! eu sempre fui muito fã de jogos de atari e de NES, e eu queria criar um game 2D em C++ estilo jogo de atari sem engine de jogos nem nada do tipo. Quais as bibliotecas eu posso usar e quais videos no youtube ou materiais na internet são bons para me ajudar? Obrigado

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

Em 06/09/2021 às 20:19, JimSpecial Edi disse:

Eae galera! eu sempre fui muito fã de jogos de atari e de NES, e eu queria criar um game 2D em C++ estilo jogo de atari sem engine de jogos nem nada do tipo. Quais as bibliotecas eu posso usar e quais videos no youtube ou materiais na internet são bons para me ajudar? Obrigado


Se tiver afiado no inglês, recomendo muito o canal do javidx9. Lá você vai encontrar uma série de videos-tutoriais mostrando o passo-a-passo pra renderizar gráficos em tempo real usando apenas a CPU. Ele foca principalmente no básico, ou seja, a matemática necessária e os rudimentos de C++ (quase C). Exatamente o que você precisa. Mas antes de pensar em criar jogos, no sentido geral do termo, tente dominar o básico sobre renderizar imagens na tela de forma rudimentar (sem uma GPU, sem 3D), interagir com ela em tempo real, aplicar proporções pra criar a ilusão de profundidade, ilusão de movimento etc. Apenas nesses aspectos já há bastante material de estudo antes mesmo de pensar em fazer o primeiro jogo.

Vou anexar abaixo um dos videos do javidx9 sobre desenhar triângulos e proporções. Durante os videos ele vai indicar bibliotecas e outras tantas coisas mais que você possa precisar/saber.

https://www.youtube.com/watch?v=ih20l3pJoeU

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Acho que com o hardware que temos disponível hoje em dia a maneira mais eficiente de desenhar coisas ate mesmo 2D é construir formas com triângulos, fazer o mapeamento de texturas e enviar para a placa de vídeo já que a engenharia das GPU desde a mais simples ate as mais poderosas é basicamente gerar uma quantidade absurda de triângulos numa velocidade altíssima, não tem porque não usarmos essas capacidades.

 

Na SFML e acredito que outras bibliotecas você pode criar geometria de triângulos de forma mais simples, aqui nesse link tem um tutorial sobre os vertex arrays, que é uma uma maneira mais baixo nível de manipular triângulos sem que ter programar diretamente em OpenGL, DirectX ou ter que estudar aqueles livros de geometria que quebra o seu pé se cair. Aqui tem o exemplo de como criar um tilemap que é base pra muitos jogos.

 

https://www.sfml-dev.org/tutorials/2.5/graphics-vertex-array.php

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

12 horas atrás, Benjamin Breeg disse:

Acho que com o hardware que temos disponível hoje em dia a maneira mais eficiente de desenhar coisas ate mesmo 2D é construir formas com triângulos, fazer o mapeamento de texturas e enviar para a placa de vídeo já que a engenharia das GPU desde a mais simples ate as mais poderosas é basicamente gerar uma quantidade absurda de triângulos numa velocidade altíssima, não tem porque não usarmos essas capacidades.


Você tá absolutamente certo. Mas interagir com a GPU através da API do driver (OpenGL, Vulkan, DirectX etc.) é um mundo em si. Até mesmo em termos da mais simples delas, OpenGL no caso. Além do mais, GPUs são dispositivos que funcionam em paralelo, daí entra toda uma questão de paralelismo, sincronização com a CPU, shaders, rasterização etc. Creio que é muito pra quem tá apenas começando.

Talvez, seja mais prático pro iniciante fazer apenas um clone de um jogo clássico, tipo Pong ou Asteroids, renderizando com a CPU. Existe uma tonelada de coisas pra aprender aqui relacionadas a matemática, detecção de colisão, taxa de quadros, medida de tempo, registrar eventos, etc. Daí em diante, querer fazer mais coisas e redescobrir esses monstros chamados de GPUs, será um processo natural.

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

@JimSpecial Edi    a linguagem c e c++ , não tem comandos para usar gráficos , a não ser em algum IDE como JBuilder c++ ,  que tem gráficos bem simples como criar círculos , elipse, e retângulos ,  e linhas ,  então você terá que criar funções  para construir gráficos ,   como nesses links :

https://www.clubedohardware.com.br/forums/topic/1535791-programa-de-console-em-c-para-visualizar-gráficosformas-de-onda/?tab=comments#comment-8153685

https://www.clubedohardware.com.br/forums/topic/1495775-criar-gráficos-no-visual-studio/?tab=comments#comment-7985512

então seria melhor usar um IDE que já tenha tais funções / comandos para trabalhar com som's  e  Gráficos 2D e 3D como o Blitz 3D , que usa linguagem Basic de fáciL aprendizado e com muitos exemplos na aba de  Help , 

Blitz 3D

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!