3D 데이터 형식용 오픈소스 C++ 라이브러리
다양한 3D 데이터 형식의 기하학적 장면 로드 및 처리를 지원하는 C++ API입니다. 게임 엔진과 통합하고 다른 프로그래밍 언어에 바인딩할 수 있습니다.
Asset-Importer-Lib(Assimp)는 C++로 구현되는 강력한 오픈 소스 라이브러리입니다. 소프트웨어 개발자는 자신의 C++ 응용 프로그램 내에서 다양한 3d 데이터 형식의 기하학적 장면을 로드하고 처리할 수 있습니다. 라이브러리는 플랫폼 독립적이며 게임 엔진과의 쉬운 통합 및 다른 프로그래밍 언어에 대한 바인딩을 제공합니다.
전 세계적으로 여러 3D 파일 형식이 있으며 Assimp 라이브러리에는 그 중 몇 가지 중요한 형식에 대한 지원이 포함되어 있습니다. 라이브러리는 매우 잘 구성되어 있으며 Collada, 3D Studio Max 3DS 및 ASE, Biovision BVH, Stanford Polygon Library, AutoCAD DXF, Neutral 파일 형식, Autodesk DXF, 개체 파일 형식, Milkshape와 같은 40개 이상의 3D 파일 형식에 대한 지원을 제공합니다. 3D, LightWave 장면 등.
라이브러리는 다양한 소스에서 요소를 한 번 가져오고 쉽고 빠른 액세스를 위해 엔진별 형식으로 저장하는 데 매우 유용합니다. 최신 버전에는 3D 파일을 지원되는 다른 파일 형식으로 내보내기 위한 지원도 포함되어 있습니다. 라이브러리는 향상된 정점 캐시 위치, 임의의 다각형 삼각 측량, 퇴화 다각형 검색, GPU 제한을 극복하기 위한 큰 메쉬 분할, 메쉬 최적화, 출력 구조 및 노드를 더 적은 드로우 콜에 대해 검증하여 최대 데이터 무결성 보장 등과 같은 기능을 지원합니다.
Assimp 시작하기
Assimp 라이브러리를 설치하는 가장 쉬운 방법은 cmake를 사용하는 것입니다. 먼저 cmake를 설치해야 합니다. 원활한 설치를 위해 다음 명령어를 사용해주세요. 라이브러리를 빌드하려면 명령 프롬프트를 열고 repo-폴더로 이동하여 cmake를 실행하십시오.
cmake를 통해 Assimp 설치
cmake CMakeLists.txt
C++ 라이브러리를 통해 3D 모델 로드 및 처리
Assimp(Open Asset Import Library)에는 C++ 응용 프로그램 내에서 일부 일반적인 3D 모델 형식의 3D 모델 액세스 및 로드에 대한 지원이 포함되어 있습니다. 3D 모델 파일에 대한 경로를 제공해야 하며 모델 로드가 시작됩니다. 인스턴스를 쉽게 생성하고 그 안에 모델에 대한 모든 정보를 저장할 수 있습니다. 라이브러리는 재료가 메쉬보다 먼저 로드되고 메쉬가 노드보다 먼저 로드되어야 하는 순서로 모델을 로드하고 읽습니다.
C++를 통해 CAD 모델 변환
오픈 소스 Library Assimp는 소프트웨어 개발자에게 C++ 애플리케이션을 사용하여 CAD 모델을 로드하고 지원되는 다른 3D 모델로 변환할 수 있는 기능을 제공합니다. CAD 파일의 주소를 제공해야 하며 로드되면 DAE, STL, OBJ, PLY, STEP, 3MF, FBX 등과 같은 지원되는 다른 형식으로 쉽게 변환할 수 있습니다.
모델에 애니메이션 가져오기 및 적용
Open Asset Import Library(Assimp)는 소프트웨어 프로그래머가 C++ 코드를 사용하여 모델에 애니메이션을 적용할 수 있는 기능을 제공합니다. 가장 좋은 방법은 먼저 장면 그래프의 노드에 애니메이션을 적용한 후 장면 그래프의 현재 상태에서 뼈대 매트릭스를 계산할 수 있는 것입니다.