Vulkanscenegraph (VSG), é uma biblioteca de gráficos de cenas de alto desempenho moderna, de alto desempenho, construída sobre a API Vulkan Graphics/Compute. O software está escrito em C ++ 17 e segue as melhores práticas CPPCoreGuidelines e Foss. O código -fonte é publicado sob a licença do MIT, com exceção do vulkan.h, usado para extensões Vulkan, que está sob a Apache License 2.0.
Este repositório contém cabeçalhos C ++ e scripts de construção de origem e cmake para criar a biblioteca Libvsg. Bibliotecas e exemplos de suporte adicionais são fornecidos em repositórios separados, links para estes são fornecidos abaixo. Atualmente, o software é criado no Linux (desktops variantes até Jetson & Raspberry Pi), Windows (VisualStudio, Mingw & Cygwin), Android e MacOS & iOS (usando Moltenvk).
Links para mais informações
O site VulkansceneGraph.org fornece uma lista detalhada de recursos, tutoriais e documentação de referência, enquanto este repositório fornece o código -fonte e a criação de suporte para criar a biblioteca VulkansceneGraph. Links rápidos para os recursos hospedados no site:
- Recursos - Tour de recursos que você encontrará nos projetos Vulkanscenegraph e Companion.
- Capturas de tela - capturas de tela de exemplos de vulkanscenegraph e bibliotecas e aplicativos de terceiros
- Tutoriais-Tutorial de Parte Mulit que o leva da Introdução aos Gráficos de Cena, da Multi-Threading and Otimization.
- Documentação - Documentação de referência gerada por doxygen e links para materiais de aprendizagem de terceiros
- Discussão - Fórum de discussão hospedado no Github.
- Serviços - Lista de empresas conectadas ao Projeto Vulkanscenegraph que pode fornecer serviços profissionais
Links para projetos complementares que oferecem recursos adicionais
Hospedado como parte do VSG-DEV:
- VSGXCHANGE LEITURA E ESCRITA DE IMAGEM DE 3RD PARTES E MODELOS 3D E SUPORREIO HTTP.
- VSGEXAMPOS Testes e exemplos.
- OSG2VSG OpenSceneGraff Integration Biblioteca que permite a conversão do gráfico de cena OSG em VSG e o uso de carregadores OpenSceneGraph.
- Integração vsgimgui imgui permitindo a interface da usuário na janela gráfica.
- VSGQT Integração qt com vulkanscenegraph.
- VSGPoints Carregamento e renderização da nuvem de pontos 3D Point para vulkanscenegraph com suporte de paginação de banco de dados e escalabilidade até bilhões de pontos.
- VSGUNITY Plugin para unidade que fornece exportação para o formato binário/ASCII nativo de vulkanscenegraph.
- MyFirstVsGApplication Application StandalonOne VSG que pode ser usado como modelo para seus próprios aplicativos.
- Projeto VSGFrameWork Modelo que usa o CMake FetchContent para atrair todas as principais bibliotecas associadas ao vulkanscenegraph e dependências e as constrói.
Projetos comunitários:
- Integração do VSGSDL SDL com vulkanscenegraph.
- VSGVR OpenVR integração com vulkanscenegraph.
- VSGCs 3D Tiles e Integração de íons de césio
- VSGEARTH OSGEARTH INTEGRAÇÃO
- Motor de aplicação geoespacial de 3D Rocky (Vulkan / C ++ 17 / VSG). O sucessor do Pelican Mapening de Osgeerth.
Guia rápido para construir o VSG
Pré -requisitos:
- Necessário: C ++ 17 Compilador compilador IE G ++ 7.3 ou posterior, CLANG 6.0 ou posterior, Visual Studio S2017 ou posterior.
- Necessário: cmake 3.7 ou posterior.
- Necessário: Vulkan 1.1 ou posterior.
- Opcional: GLSLANG 14.0 ou posterior. Somente exigido se for necessária a compilação de shader em tempo de execução.
Sabe -se que as versões de dependência acima funcionam para que tenham sido definidas como o mínimo atual, pode ser possível construir contra versões mais antigas. Se você encontrar sucesso com versões mais antigas, informe -nos e podemos atualizar as informações da versão.
Enquanto você pode instalar bibliotecas de desenvolvimento e cabeçalhos da Vulkan e Glslang a partir de repositórios de terceiros, eles podem ser mais antigos; portanto, para as versões mais recentes, você também pode usar o vulkansdk fornecido pela Lunarg. Seu pode baixar o vulkansdk do Lunarg, descompactar em um diretório local e definir a variável de ambiente vulkan_sdk para o diretório incluir/lib.
Instruções de construção da linha de comando:
Para construir e instalar a biblioteca estática libvsg (.a/.lib) na fonte:
git clone https://github.com/vsg-dev/VulkanSceneGraph.git
cd VulkanSceneGraph
cmake .
cmake --build . -j 16 -t install
Detalhes completos sobre como criar o VSG (Unix/Windows/Android/MacOS) podem ser encontrados no arquivo install.md.