
Map Cub é um projeto inspirado no clássico jogo Wolfenstein 3D. Utilizando a técnica de raycasting, este jogo renderiza um ambiente 3D a partir de um mapa 2D definido em um arquivo .cub. O projeto permite ao jogador explorar um labirinto com paredes texturizadas, chão e teto colorido
Map Cub é um projeto inspirado no clássico jogo Wolfenstein 3D. Utilizando a técnica de raycasting, este jogo renderiza um ambiente 3D a partir de um mapa 2D definido em um arquivo .cub. O projeto permite ao jogador explorar um labirinto com paredes texturizadas, chão e teto coloridos, usando controles intuitivos para movimentação e rotação. O objetivo é criar uma experiência imersiva de exploração 3D, demonstrando habilidades em programação em C, manipulação de gráficos e parsing de arquivos.
.cub para carregar configurações do mapa, texturas e cores.screenshot1.png).├── Makefile # Arquivo para compilação ├── src/ # Código-fonte em C │ ├── main.c # Ponto de entrada do programa │ ├── parsing.c # Lógica de parsing do arquivo .cub │ ├── raycasting.c # Algoritmo de raycasting │ ├── events.c # Gerenciamento de eventos de teclado/mouse │ └── utils.c # Funções auxiliares ├── includes/ # Arquivos de cabeçalho (.h) ├── textures/ # Imagens para texturas das paredes ├── maps/ # Arquivos .cub com mapas ├── screenshots/ # Screenshots do projeto │ ├── screenshot1.png # Tela inicial │ ├── screenshot2.png # Jogo em execução └── README.md # Documentação do projeto
Pré-requisitos:
Instalar MiniLibX:
# No Linux sudo apt-get install libx11-dev libxext-dev # Clone e compile MiniLibX (ajuste o caminho conforme necessário) git clone https://github.com/42Paris/minilibx-linux.git cd minilibx-linux make
Passos para Instalação:
# Clone o repositório git clone https://github.com/seu-usuario/cub3d.git cd cub3d # Compile o projeto make # Execute o jogo com um mapa ./cub3D maps/example.cub
Acesse o Jogo:
A tela inicial apresenta a interface do Cub3D, preparando o jogador para entrar no ambiente 3D.

Abaixo está uma captura do jogo em ação, mostrando o ambiente 3D renderizado com raycasting.

Nota: Certifique-se de que os arquivos screenshot1.png e screenshot2.png estão na pasta screenshots/ do repositório para exibição correta no GitHub.
Executar o Jogo:
./cub3D maps/example.cub
example.cub por um arquivo de mapa válido.Controles:
Configurar Mapas:
.cub na pasta maps/.R 1280 720 NO ./textures/north.png SO ./textures/south.png WE ./textures/west.png EA ./textures/east.png F 220,100,0 C 225,30,0 111111 100001 10N001 100001 111111
git checkout -b feature/nova-funcionalidade).git commit -m 'Adiciona nova funcionalidade').git push origin feature/nova-funcionalidade).Este projeto está licenciado sob a MIT License.
Para dúvidas ou sugestões, entre em contato via email@example.com.
Desenvolvido com 💻 e paixão por gráficos 3D e jogos.