
O Harfang®3D é uma biblioteca de visualização 3D all-in-one utilizável em C ++, Python, Lua e Go.
O Harfang®3D é uma solução fácil de adaptar, plataforma cruzada, multi-linguagem, poderosa e otimizada para integrar com sistemas incorporados, em ambientes existentes e combinar recursos para atender aos padrões industriais de imagens em tempo real em tempo 3D.
A arquitetura Harfang®3D facilita atender aos requisitos de integração de hardware, desempenho e segurança.
O Harfang®3D é escrito em C ++ e é baseado na biblioteca BGFX de código aberto que suporta Vulkan, Metal, DirectX (de 9 a 12), OpenGL e OpenGL ES. Ele se baseia nas janelas, linux, Intel e braço.
Plataformas suportadas
API da cena
Pipeline de renderização
VR API
API de física
API de áudio
Idiomas suportados
As capturas de tela a seguir foram capturadas em um 1080GTX em 1080p em execução a 60fps.
(Sun Temple, cortesia do Arquivo de Conteúdo de Pesquisa Aberta (ORCA))
Você pode baixar os binários Harfang do site oficial: https://dev.harfang3d.com/releasesases
Clone o repositório Harfang 3D , incluindo seus submódulos.
git clone --recursive -j8 https://github.com/harfang3d/harfang3d.git
cd harfang3d
Crie diretório de construção. Observe que o layout do diretório descrito não é obrigatório.
mkdir build
cd build
Clone Fabgen.
git clone https://github.com/ejulien/FABGen.git
Faça o download e instale o Autodesk FBX SDK.
Crie um diretório que mantenha o sistema de construção gerado pelo CMake.
mkdir cmake
cd cmake
Gere o sistema de construção usando cmake. Por exemplo, no Windows, será:
cmake ../.. -G "Visual Studio 16 2019" -A x64
-DCMAKE_INSTALL_PREFIX:PATH="D:/harfang/build/install"
-DPYTHON_EXECUTABLE:FILEPATH="C:/Python36/python.exe"
-DHG_FABGEN_PATH:PATH="D:/harfang/build/fabgen"
-DHG_FBX_SDK:PATH="D:/fbx_sdk"
CMAKE_INSTALL_PREFIX Especifica o diretório onde o Harfang SDK será instalado.PYTHON_EXECUTABLE é o caminho que o intérprete Python 3.FABGEN_PATH é o caminho para o gerador de ligação FabGen.HG_FBX_SDK é o caminho para o Autodesk FBX SDK.
Aqui está a lista de opções de cmake disponíveis.
HG_BUILD_CPP_SDK : construir c ++ sdk (padrão: desligado ).HG_BUILD_TESTS : construir testes de unidade SDK C ++ (padrão: desativado ).HG_BUILD_DOCS : construir documentações da API e C ++ SDK (padrão: desativado ).HG_ENABLE_BULLET3_SCENE_PHYSICS : Ativar API de física da bala (padrão: ativado ).HG_ENABLE_RECAST_DETOUR_API : ativar a malha de navegação de reforma/desvio e a API de localização de caminho (padrão: ativado ).HG_ENABLE_OPENVR_API : Ativar API OpenVR (padrão: desativado ).HG_ENABLE_SRANIPAL_API : Ativar API Vive Eye and Facial Rastreing SDK (SRANIPAL) (Padrão: Off ).HG_BUILD_ASSETC : Construa o Compilador de Asset AssetC (padrão: ON ).HG_BUILD_ASSIMP_CONVERTER : CONSTRUIR ASSTIMENTO MODELA BASED RESPONDIDADE (PADRÃO: ON ).HG_BUILD_FBX_CONVERTER : Build FBX Converter (padrão: ativado ).HG_BUILD_GLTF_IMPORTER : construir o importador GLTF (padrão: ativado ).HG_BUILD_GLTF_EXPORTER : Build GLTF Export (padrão: ativado ).HG_BUILD_HG_LUA : construir módulo Harfang lua (padrão: desativado ).HG_BUILD_HG_PYTHON : construa o módulo Harfang Python (roda) (padrão: desligado ).HG_BUILD_HG_GO : construir harfang go módulo (padrão: desativado ).Construa o SDK.
cmake --build . --config Release --target INSTALL
Nota: No Linux, você precisará especificar explicitamente o tipo de compilação com -DCMAKE_BUILD_TYPE=Release
Dependendo do conjunto de opções aprovadas para clake, o diretório de instalação conterá os seguintes subdiretos:
cppsdk : Harfang C ++ SDK.hg_python : Módulo Harfang Python.hg_lua : módulo Harfang Lua.hg_go : Módulo Harfang Go.assetc : Compilador de ativos.assimp_converter : conversor do modelo Assimp 3D.fbx_converter : FBX Converter.gltf_importer : IMPORTOR GLTF.gltf_exporter : Exportador GLTF.Instale a extensão CMAKETOOLS.
Copie o arquivo harfang/.vscode/template_settings.json para harfang/.vscode/settings.json e edite -o para refletir sua instalação local.
Abra a pasta harfang no código do Visual Studio. O CMAKETOOLS deve configurar com sucesso o projeto.
O diretório sdk harfang c ++ cppsdk contém o seguinte:
bin : Dependendo da configuração usada, este diretório contém um subdiretório Release ou Debug com todas as bibliotecas compartilhadas.lib : Como o diretório bin , ele contém um subdiretório nomeado após a configuração usada durante a construção ( Release ou Debug ) com todas as bibliotecas estáticas geradas.include : Contém todos os C ++ incluem arquivos da API pública de Harfang.cmake : contém os arquivos de configuração do CMake. Para adicionar o Harfang C ++ SDK ao seu projeto CMake, basta adicionar o seguinte ao arquivo CMakeLists.txt :
find_package (harfang REQUIRED
COMPONENTS cppsdk
PATHS ${HG_CPPSDK_PATH}
NO_DEFAULT_PATH
) com HG_CPPSDK_PATH o caminho para o diretório cppsdk . Por exemplo, se seguirmos o layout do diretório fornecido acima, ele será D:/harfang/build/install/cppsdk .
Os alvos devem ser vinculados às seguintes bibliotecas.
hg::enginehg::foundationhg::platformhg::libluadll A função install_cppsdk_dependencies instala as dependências de bibliotecas compartilhadas de Harfang C ++ SDK.
install_cppsdk_dependencies( destination component )destination : é a biblioteca onde as bibliotecas compartilhadas serão instaladas.component : Nome do componente de instalação.Harfang segue a especificação de versão semântica (Semver) (http://semver.org).
Dado um número de versão major.Minor.patch, incremente o:
Harfang está licenciado sob o GPLV3, LGPLV3 e uma licença comercial:
https://www.harfang3d.com/license
By contributing your code to HARFANG you grant the HARFANG3D organization a non-exclusive, irrevocable, worldwide, royalty-free, sublicenseable, transferable license under all of Your relevant intellectual property rights (including copyright, patent, and any other rights), to use, copy, prepare derivative works of, distribute and publicly perform and display the Contributions on any licensing terms, including without limitation: (a) open source licenses like the MIT Licença; e (b) licenças binárias, proprietárias ou comerciais. Exceto pelas licenças concedidas neste documento, você reserva tudo o direito, o título e o interesse da contribuição.
Você confirma que é capaz de nos conceder esses direitos. Você representa que tem direito legalmente a conceder a licença acima. Se o seu empregador tiver direitos à propriedade intelectual que você cria, você representa que recebeu permissão para fazer as contribuições em nome desse empregador ou que seu empregador renunciou a tais direitos para as contribuições.
Você representa que as contribuições são suas obras originais de autoria e, a seu conhecimento, nenhuma outra pessoa reivindica ou tem o direito de reivindicar, qualquer direito em qualquer invenção ou patente relacionada às contribuições. Você também representa que não é legalmente obrigado, entrando em um contrato ou de outra forma, de qualquer maneira que entre em conflito com os termos desta licença.
A organização Harfang3d reconhece que, exceto como explicitamente descrito neste Contrato, qualquer contribuição que você fornece é "como é", sem garantias ou condições de qualquer tipo, expressa ou implícita, incluindo, sem limitação, quaisquer garantias ou condições de título, não violação, comercialização ou fitness para um determinado objetivo.
Existem inúmeras maneiras de ajudar a Harfang a cultivar sua comunidade:
(O sótão NVIDIA USD usando o renderizador AAA Harfang 3D)
(Sun Temple, cortesia do Arquivo de Conteúdo de Pesquisa Aberta (ORCA))
(Bistro, cortesia do Open Research Content Archive (ORCA))
(Sponza Atrium Gltf, cortesia de Crytek/Themaister)
(Melodias marinhas, por resistência da Noruega)