Open Source C++ Library for 3D Data Formats

C++ API that supports loading and processing geometric scenes from various 3D file formats. Integrate it with game engines and bind to other programming languages.

The Asset-Importer-Lib (Assimp) is a powerful open source library implemented in C++. It gives software developers the capability to load as well as process geometric scenes from various 3D data formats from C++ applications. The library is platform-independent and provides easy integration with game engines and binding to other programming languages.

There are several 3D file formats around the world, and Assimp library supports several important ones. The library is well organized and provides support for 40+ 3D file formats such as Collada, 3D Studio Max 3DS and ASE, Biovision BVH, Stanford Polygon Library, AutoCAD DXF, Neutral File Format, Autodesk DXF, Object File Format, Milkshape 3D, LightWave Scene, and many more.

The library is useful to import elements from various sources as well as in storing the information in an engine-specific format for easy and quick access. The latest version has also included support for exporting 3D files to other file formats. The library supports features like enhanced vertex cache locality, triangulating arbitrary polygons, search degenerate polygons, split large meshes to overcome GPU limitations, optimize meshes, ensuring maximum data integrity by validating the output structure & nodes for fewer draw calls, and so on.

Previous Next

Getting Started with Assimp

The easiest way to install Assimp library is via cmake. First, you need to install cmake. To build the library just open a command-prompt console, navigate into the repo-folder and run cmake.

Install Assimp via cmake

cmake CMakeLists.txt

Load & Process 3D Models via C++ Library

The Open Asset Import Library (Assimp) supports accessing and loading 3D models from some common 3D model formats inside C++ applications. You need to provide the path to the 3D model file and it will start loading the model. You can easily create the instance and stores all information about the model inside it. The library will load and read the model in such order that materials must be loaded before meshes and meshes must be before nodes.

Convert CAD Models via C++

The open source Library Assimp gives software developers the capability to load and convert CAD models to other supported 3D models using C++ applications. You need to provide the address of the CAD file and once load you can easily convert it to other supported formats such as DAE, STL, OBJ, PLY, STEP, 3MF, FBX and many more.

Import and Apply Animation to Models

The Open Asset Import Library (Assimp) gives software programmers the ability to apply animations to the models using C++ code. The best approach will be to first animate the nodes in the scene graph after that you can calculate the bone matrices from the current state of the scene graph