Este projeto é uma aplicação escrita em C/C++ usando OpenGL que simula o Sistema Solar em 3D. Desenvolvido como trabalho final da disciplina de Computação Gráfica, o simulador apresenta a Terra orbitando o Sol e explora conceitos de iluminação, mapeamento de texturas em esferas (Sol, Terra e Lua), geração procedural de estrelas de fundo, cálculo de oclusão para profundidade e animação automática das órbitas e rotações.
O objetivo é oferecer uma ferramenta educacional para estudo de gráficos 3D, geometria e técnicas de renderização, sem exigir interação direta complexa do usuário.
Pré-requisitos:
- Visual Studio (2019 ou superior) com o workload "Desktop development with C++" instalado.
- Bibliotecas/headers OpenGL (o diretório
GL/incluso no repositório atende a esse requisito).
Clone o repositório e acesse a pasta do projeto:
git clone https://github.com/yagoprssantos/Sistema-Solar-OpenGL.git
cd pt-br/Sistema Solar/ # ou en-us/Solar System/Configuração no Visual Studio:
- Abra a solução apropriada (ex.:
Solar System.slnemen-us/Solar System/oupt-br/Sistema Solar/). - Em
Project > Propertiesdo projetoSolar System/Sistema Solar, emC/C++ > General > Additional Include Directories, adicione o caminho para a pastaGL/do repositório. - Defina a plataforma para
x86(o projeto foi testado em 32-bit). - Build > Build Solution.
Se necessário, copie os arquivos presentes em GL/ para a pasta do projeto (caso o include não esteja apontando para o diretório correto).
Após compilar no Visual Studio, execute o binário (modo Debug/Release conforme preferir). A simulação inicia automaticamente mostrando o Sol, a Terra e a Lua com suas rotações e órbitas animadas.
Observações rápidas:
- A câmera inicial exibe todo o sistema; não há controles complexos por padrão.
- Texturas e recursos gráficos estão na pasta
Textures/dentro do projeto.
- Renderização 3D com OpenGL: Uso de OpenGL para desenhar esferas e elementos do cenário.
- Mapeamento de texturas: Texturas aplicadas a Sol, Terra e Lua para maior realismo.
- Iluminação: Modelo de iluminação aplicado para simular luz solar e sombreamento.
- Estrelas procedurais: Fundo estrelado gerado proceduralmente.
- Oclusão e profundidade: Cálculos básicos para melhorar percepção de profundidade.
- Animação automática: Órbitas e rotações animadas sem necessidade de interação do usuário.
Solar-System-OpenGL/
├── en-us/
│ └── GL/ # Headers e arquivos OpenGL incluídos no repositório
│ └── Solar System/ # Versão em inglês (solução e código fonte)
├── pt-br/
│ └── GL/ # Headers e arquivos OpenGL incluídos no repositório
│ └── Sistema Solar/ # Versão em português (solução e código fonte)
├── readme.md # Documentação do projeto
- main.cpp: Ponto de entrada do aplicativo e loop principal de renderização.
- Render / GL headers: Arquivos em
GL/que fornecem includes e bindings necessários para compilar com OpenGL/GLUT/GLEW. - Texturas/Textures: Imagens usadas para mapear as superfícies do Sol, Terra e Lua.
- Shaders (se aplicável): Código GLSL para efeitos de iluminação (quando presentes no projeto).