# SpaceEngine

SpaceEngine (também conhecido como Space Engine) é um software proprietário de astronomia 3D desenvolvido pelo russo Vladimir Romanyuk. Ele cria um universo tridimensional a partir de uma combinação de dados astronômicos reais e algoritimos de geração processual cientificamente precisos. Os usuários podem viajar através do espaço em qualquer direção ou velocidade, e para frente ou para trás no tempo. SpaceEngine está em estado beta e atualmente é um software gratuito para Microsoft Windows.
As propriedades dos objetos, tais como a temperatura, massa, raio, etc, são apresentadas ao usuário no HUD e em uma janela de informação. SpaceEngine inclui milhares de objetos reais, incluindo estrelas do catálogo Hipparcos, galáxias dos catálogos NGC e IC, várias nebulosas conhecidas e todos os exoplanetas conhecidos e suas respectivas estrelas.

## Funcionalidade

O objetivo de SpaceEngine é atingir o realismo científico, e para reproduzir todo o tipo de fenômeno astronômico conhecido. Usa catálogos de estrelas juntamente com a geração procedural para criar um universo cúbico de 10 bilhões de parsecs em um lado, centrado na Terra. O uso da geração procedural permite um universo muito maior para explorar do que programas semelhantes, como Celestia; bilhões de galáxias podem ser exploradas, cada uma com bilhões de estrelas, planetas e luas.

### Objetos de catálogo

Os objetos reais que SpaceEngine inclui são do catálogo Hipparcos para estrelas, os catálogos NGC e IC para galáxias, todos os exoplanetas conhecidos, e aglomerados estelares proeminentes, nebulosas e objetos do Sistema Solar.

### Objetos gerados processualmente

SpaceEngine atualmente usa métodos procedurais para gerar:
* Sistemas planetários completos com vários tipos de planetas, asteroides e cometas
* Várias estrelas
* Nebulosas e aglomerados globulares
* Remanescentes estelares, incluindo anãs brancas , estrelas de nêutrons e buracos negros
* Galáxias elípticas, espirais e irregulares, cada uma com um buraco negro supermassivo em seu centro
As superfícies dos planetas terrestres são geradas usando um algoritmo baseado no ruído fractal.
Tudo é baseado na mesma seed, que produz o mesmo universo simulado em cada computador no qual o programa é executado, tornando possível compartilhar locais entre usuários.

### Física

No SpaceEngine, o programa simula inércia, poços de gravidade realistas e dinâmica atmosférica.
Efeitos relativistas na velocidade da luz são simulados, em áreas como as galáxias infravermelhas, o redshift gravitacional exercido por buracos negros e o redshift teórico produzido pelo teletransporte.

## Navegação

Ao usar SpaceEngine, um usuário pode explorar livremente o universo usando comandos de teclado e mouse, incluindo as teclas WASD. Um usuário pode viajar para qualquer objeto no universo do programa, selecionando-o e usando a função go to para viajar para lá automaticamente. Os objetos podem ser selecionados clicando neles ou pesquisando e selecionando-os em uma janela de busca.
Existem três modos diferentes de controle da câmera. No modo livre, a câmera se move sem inércia. Os usuários podem definir uma velocidade constante para viajar até 100 milhões de parsecs por segundo. Os modos nave espacial e de aeronave permitem a inércia, e o usuário define uma aceleração ao invés de uma velocidade. No modo aeronave, a direção do movimento segue a orientação da câmera; no modo de espaçonave, não.
Os usuários de SpaceEngine também podem acelerar ou diminuir a velocidade ou viajar para um momento específico no tempo; no entanto, a janela de entrada só aceita datas de 1 de janeiro, 2 147 483 648 a.C. para 31 de dezembro, 2,147,483,648 d.C..
Todos os comandos de teclas podem ser personalizados nas configurações do SpaceEngine.

### Wiki e localizações

O software tem seu próprio banco de dados wiki embutido que fornece informações detalhadas sobre todos os objetos celestiais e permite que um jogador crie nomes e descrições personalizados para eles. Ele também tem um banco de dados de locais onde um jogador pode salvar qualquer posição e tempo na simulação e carregá-lo novamente no futuro.

## Limitações

Embora os objetos que fazem parte de um sistema planetário se movem, e as estrelas giram em torno de seus eixos e orbitam-se mutuamente em múltiplos sistemas estelares, o movimento próprio estelar não é simulado e as galáxias estão em locais fixos e não giram.
A maioria das naves espaciais do mundo real, como a Voyager 2, não são fornecidas no SpaceEngine.

## Desenvolvimento

O desenvolvimento de SpaceEngine começou em 2005, com seu primeiro lançamento público em junho de 2010. O software é escrito em C++. O software usa OpenGL como sua API gráfica e usa shaders escritos em GLSL.
A versão oficial mais recente é 0.9.8.0. Sendo a próxima versão a ser lançada a 0.9.9.0, sem data para lançar. Além de expandir e completar o software planetário, o desenvolvedor Romanyuk também expressou sua intenção de criar jogos usando o motor, e, eventualmente, licenciar o motor para outros desenvolvedores.
O SpaceEngine está atualmente disponível somente para o Microsoft Windows; no entanto, Romanyuk tem planos para o software suportar Mac OS e Linux no futuro.

### Addons

SpaceEngine é facilmente modificável e pode suportar uma grande variedade de addons. A comunidade online cria muitos addons para o programa, incluindo texturas de alta resolução, localizações de idiomas, modelos de naves espaciais, shaders editados, modelos de galáxias, efeitos de focos de lente e sistemas planetários fictícios. A maioria dos addons são publicados nos fóruns oficiais do site.