Biblioteca C++ de código aberto para formatos de dados 3D
C++ API que oferece suporte para carregamento e processamento de cenas geométricas de vários formatos de dados 3D. Você pode integrá-lo com mecanismos de jogos e vincular a outras linguagens de programação.
O Asset-Importer-Lib (Assimp) é uma poderosa biblioteca de código aberto que é implementada em C++. Ele oferece aos desenvolvedores de software a capacidade de carregar e processar cenas geométricas de vários formatos de dados 3D dentro de seus próprios aplicativos C++. A biblioteca é independente de plataforma e oferece fácil integração com mecanismos de jogos e vinculação a outras linguagens de programação.
Existem vários formatos de arquivo 3D em todo o mundo, e a biblioteca Assimp incluiu suporte para vários deles importantes. A biblioteca é muito bem organizada e fornece suporte para mais de 40 formatos de arquivo 3D, como Collada, 3D Studio Max 3DS e ASE, Biovision BVH, Stanford Polygon Library, AutoCAD DXF, Neutral File Format, Autodesk DXF, Object File Format, Milkshape 3D, cena LightWave e muito mais.
A biblioteca é muito útil para importar elementos de várias fontes uma vez e armazená-los em um formato específico do mecanismo para acesso fácil e rápido. A versão mais recente também inclui suporte para exportar arquivos 3D para outros formatos de arquivo suportados. A biblioteca suporta recursos como localização de cache de vértice aprimorada, triangulação de polígonos arbitrários, pesquisa de polígonos degenerados, divisão de malhas grandes para superar limitações de GPU, otimização de malhas, garantia de integridade máxima de dados validando a estrutura de saída e nós para menos chamadas de desenho e assim por diante.
Introdução ao Assimp
A maneira mais fácil de instalar a biblioteca Assimp é via cmake. Primeiro, você precisa instalar o cmake. Por favor, use o seguinte comando para uma instalação suave. Para construir a biblioteca, basta abrir um prompt de comando, navegar até a pasta repo e executar cmake.
Instale Assimp via cmake
cmake CMakeLists.txt
Carregar e processar modelos 3D via biblioteca C++
A Open Asset Import Library (Assimp) inclui suporte para acessar e carregar modelos 3D de alguns formatos comuns de modelos 3D dentro de aplicativos C++. Você precisa fornecer o caminho para o arquivo de modelo 3D e ele começará a carregar o modelo. Você pode criar facilmente a instância e armazenar todas as informações sobre o modelo dentro dela. A biblioteca carregará e lerá o modelo em tal ordem que os materiais devem ser carregados antes das malhas e as malhas devem estar antes dos nós.
Converter modelos CAD via C++
A biblioteca Assimp de código aberto oferece aos desenvolvedores de software a capacidade de carregar e converter modelos CAD em outros modelos 3D suportados usando aplicativos C++. Você precisa fornecer o endereço do arquivo CAD e, uma vez carregado, pode convertê-lo facilmente para outros formatos suportados, como DAE, STL, OBJ, PLY, STEP, 3MF, FBX e muitos mais.
Importar e aplicar animação a modelos
A Open Asset Import Library (Assimp) oferece aos programadores de software a capacidade de aplicar animações aos modelos usando código C++. A melhor abordagem será primeiro animar os nós no gráfico de cena, depois disso você pode calcular as matrizes de osso a partir do estado atual do gráfico de cena.