Biblioteka Open Source C++ dla formatów danych 3D
Interfejs API C++, który zapewnia obsługę ładowania i przetwarzania scen geometrycznych z różnych formatów danych 3D. Możesz zintegrować go z silnikami gier i powiązać z innymi językami programowania.
Asset-Importer-Lib (Assimp) to potężna biblioteka open source zaimplementowana w C++. Daje programistom możliwość ładowania i przetwarzania scen geometrycznych z różnych formatów danych 3D we własnych aplikacjach C++. Biblioteka jest niezależna od platformy i zapewnia łatwą integrację z silnikami gier i powiązanie z innymi językami programowania.
Istnieje kilka formatów plików 3D na całym świecie, a biblioteka Assimp zawiera obsługę kilku ważnych z nich. Biblioteka jest bardzo dobrze zorganizowana i zapewnia obsługę ponad 40 formatów plików 3D, takich jak Collada, 3D Studio Max 3DS i ASE, Biovision BVH, Stanford Polygon Library, AutoCAD DXF, Neutral File Format, Autodesk DXF, Object File Format, Milkshape Scena 3D, LightWave i wiele innych.
Biblioteka jest bardzo przydatna do jednorazowego importowania elementów z różnych źródeł i przechowywania ich w formacie specyficznym dla silnika, co zapewnia łatwy i szybki dostęp. Najnowsza wersja zawiera również obsługę eksportu plików 3D do innych obsługiwanych formatów plików. Biblioteka obsługuje takie funkcje, jak ulepszona lokalizacja pamięci podręcznej wierzchołków, triangulacja dowolnych wielokątów, wyszukiwanie zdegenerowanych wielokątów, dzielenie dużych siatek w celu przezwyciężenia ograniczeń GPU, optymalizacja siatek, zapewnienie maksymalnej integralności danych poprzez walidację struktury wyjściowej i węzłów pod kątem mniejszej liczby wywołań rysowania i tak dalej.
Pierwsze kroki z Assimp
Najłatwiejszym sposobem zainstalowania biblioteki Assimp jest użycie cmake. Najpierw musisz zainstalować cmake. Użyj następującego polecenia, aby uzyskać płynną instalację. Aby zbudować bibliotekę, po prostu otwórz wiersz polecenia, przejdź do folderu repo i uruchom cmake.
Zainstaluj Assimp przez cmake
cmake CMakeLists.txt
Ładuj i przetwarzaj modele 3D za pomocą biblioteki C++
Biblioteka Open Asset Import Library (Assimp) zawiera obsługę dostępu i ładowania modeli 3D z niektórych popularnych formatów modeli 3D w aplikacjach C++. Musisz podać ścieżkę do pliku modelu 3D, a rozpocznie się ładowanie modelu. Możesz łatwo utworzyć instancję i przechowywać w niej wszystkie informacje o modelu. Biblioteka załaduje i odczyta model w takiej kolejności, że materiały muszą być wczytane przed siatkami, a siatki przed węzłami.
Konwertuj modele CAD za pomocą C++
Biblioteka Assimp o otwartym kodzie źródłowym daje programistom możliwość ładowania i konwertowania modeli CAD na inne obsługiwane modele 3D przy użyciu aplikacji C++. Musisz podać adres pliku CAD, a po załadowaniu możesz go łatwo przekonwertować na inne obsługiwane formaty, takie jak DAE, STL, OBJ, PLY, STEP, 3MF, FBX i wiele innych.
Importuj i zastosuj animację do modeli
Biblioteka Open Asset Import Library (Assimp) daje programistom możliwość stosowania animacji do modeli przy użyciu kodu C++. Najlepszym podejściem będzie najpierw animowanie węzłów na wykresie sceny, a następnie obliczenie macierzy kości z bieżącego stanu wykresu sceny.