O olcPixelGameEngine é uma biblioteca de arquivo único para desenvolvimento de jogos criada em C++.
É multiplataforma, compilando no Windows via Visual Studio, MinGW e Code::Blocks, e no GNU/Linux com um g++ moderno.
O olcPixelGameEngine
foi desenvolvido pelo lendário programador C++ e youtuber: javidx9.
Em sistemas baseados em Linux precisará das seguintes dependências:
Exemplo de instalação de dependências em algumas distros GNU/Linux:
# Debian, Ubuntu, Mint e similares
sudo apt install build-essential libglu1-mesa-dev libpng-dev
# Arch Linux, Manjaro e similares
sudo pacman -S gcc glibc libpng mesa
# Fedora e similares
sudo dnf groupinstall "Development Tools" "Development Libraries"
sudo dnf install gcc-c++ glew-devel glm-devel libpng-devel
Depois disso basta criar um código básico(para teste), copie o código exemplo abaixo:
main.cpp
#define OLC_PGE_APPLICATION
#include "olcPixelGameEngine.h"
class Example : public olc::PixelGameEngine {
public:
Example(){
sAppName = "Example";
}
public:
bool OnUserCreate() override {
return true;
}
bool OnUserUpdate(float fElapsedTime) override {
for (int x = 0; x < ScreenWidth(); x++){
for (int y = 0; y < ScreenHeight(); y++){
Draw(x, y, olc::Pixel(rand() % 255, rand() % 255, rand()% 255));
}
}
return true;
}
};
int main() {
Example demo;
if (demo.Construct(100, 100, 4, 4)){
demo.Start();
}
return EXIT_SUCCESS;
}
Agora faça o download do arquivo olcPixelGameEngine.h:
wget -q https://raw.githubusercontent.com/OneLoneCoder/olcPixelGameEngine/master/olcPixelGameEngine.h
E compile com o seguinte comando:
g++ main.cpp -lX11 -lGL -lpthread -lpng -lstdc++fs -std=c++17
Após rodar o ./a.out
se aparecer uma janela parecendo “sem sintonia de canal em TVs antigas” como a imagem abaixo, é porque está tudo certo!
Para rodar no Windows pelo Visual Studio veja o vídeo abaixo(Em inglês):
Para rodar no Windows com MinGW:
Para rodar no Windows com Code::Blocks:
cpp gamedev terminal windows macos