[GameDev] - Sobre a criação de jogos em C++...
Introdução
C++ sem dúvidas é uma das linguagens de programação mais usadas para a criação de jogos por conta da sua alta velocidade de desenvolvimento e performance. Muitos jogos AAA são programados usando a linguagem C++, e portanto, eu gostaria de apresentar-lhes algumas ferramentas que podem ser usadas para a criação de jogos usando a linguagem C++.
Ferramentas para o desenvolvimento de jogos em C++
-
- SDL2(abreviação para Simple DirectMedia Layer) apesar de ser escrita na linguagem C, é diretamente compatível com C++.
- É uma biblioteca de código aberto.
- Ela pode manipular: vídeo, eventos, áudio digital, CD-ROM, threads, carregamento de objetos compartilhados, rede e timers (temporizadores).
- Deu nome à jogos como OpenTTD(eu adoro esse jogo), 0 A.D. entre outros...
- Godot Engine
- A Godot, normalmente usada com sua linguagem GDScript, pode também ser usada com C++ e algumas outras linguagens... Para saber sobre, recomendo pesquisar sobre GDNative. (C++ é a linguagem nativa da Godot).
- Particularmente eu recomento usar Godot para a criação de jogos 2D, pois possui sistemas muito simples e fáceis de utilizar, como o uso de
Kinematic character
para criar personagens, o sistema de câmera e outras ferramentas para a criação de jogos 2D que são muito fáceis e rápidas de utilizar, embora criar jogos 3D com Godot seja uma escolha interessante e não deve ser descartada. - Você pode instalar a Godot por meio da Steam ou do site oficial da Godot
- Possui uma biblioteca integrada com exemplos de jogos ou programas para você se basear/se inspirar. Com certeza vai te ajudar muito quando estiver começando a criar jogos com Godot.
- Unreal Engine
- Normalmente usada para jogos 3D, tem um suporte a gráficos muito bonitos e desenvolvidos.
- Deu nome a títulos como Batman Arkham City, Fortnite entre outros...
- Usada para jogos AAA ou jogos que precisem de realismo, ambientação, iluminação e etc, como um jogo FPS(First Person Shooter).
- Recomendo fortemente um bom computador para criar jogos 3D com a Unreal Engine.
- Raylib
- Muito fácil de utilizar, com suporte a Linux, Windows e MacOS, além de você conseguir rodar programas em raylib pela internet.
- Oferece ferramentas que podem ajudar no seu desenvolvimento, as chamadas
raylib technologies tools
e bibliotecas extras, comoraygui
.
- É uma biblioteca de código aberta, podes checar seu código aqui
- Fornece uma sessão de exemplos, que podem ser usados para resolver dúvidas, implementar em seu código e etc... Com certeza vai te ajudar muito quando estiver começando a desenvolver jogos com raylib.
Conclusões e recomendações
Se você estiver começando, pensando em criar jogos ou usar a linguagem de programação C++, recomendo que leia este website.
Para aprender a usar as ferramentas mencionadas acima, recomendo que leia suas documentações(clique no nome da ferramenta para ir ao seu site e acessar sua documentação) e, se sua ferramenta tiver uma sessão ou um catálogo de exemplos de código, use-as para aprender como usar certas ferramentas de sua Game Engine/Biblioteca.
- IMPORTANTE
Este é minha primeira publicação, então, agradeço se puderem me corrigir, me dar dicas de como melhorar, e, além disso, peço tolerância à qualquer erro que eu tenha cometido...
Obs:
Informações foram conseguidas, em sua maioria, através da minha experiência e com informações fornecidas pelos sites oficiais das ferramentas mencionadas.
Outras fontes usadas:
- https://tecnoblog.net/responde/o-que-e-unreal-engine/
- https://www.felipealencar.net/2008/12/biblioteca-sdl-e-o-desenvolvimento-de.html
- https://canaltech.com.br/mercado/as-10-linguagens-de-programacao-mais-utilizadas-no-desenvolvimento-de-games-213047/
- https://www.guj.com.br/t/linguagens-de-programacao-para-games/383068/6