2015-12-01 18:34:54 +00:00
Open Asset Import Library (assimp)
2016-02-02 09:58:15 +00:00
==================================
2015-04-06 11:24:03 +00:00
Open Asset Import Library is a library to load various 3d file formats into a shared, in-memory format. It supports more than __40 file formats__ for import and a growing selection of file formats for export.
2013-01-19 15:37:18 +00:00
2015-04-06 11:24:03 +00:00
APIs are provided for C and C++. There are various bindings to other languages (C#, Java, Python, Delphi, D). Assimp also runs on Android and iOS.
2013-01-19 15:37:18 +00:00
2015-04-06 11:24:03 +00:00
Additionally, assimp features various __mesh post processing tools__ : normals and tangent space generation, triangulation, vertex cache locality optimization, removal of degenerate primitives and duplicate vertices, sorting by primitive type, merging of redundant materials and many more.
2015-07-13 07:20:17 +00:00
This is the development trunk containing the latest features and bugfixes. For productive use though, we recommend one of the stable releases available from [assimp.sf.net ](http://assimp.sf.net ) or from *nix package repositories.
The current build status is:
2015-04-06 11:24:03 +00:00
2015-07-13 07:06:05 +00:00
Linux [![Linux Build Status ](https://travis-ci.org/assimp/assimp.png )](https://travis-ci.org/assimp/assimp)
Windows [![Windows Build Status ](https://ci.appveyor.com/api/projects/status/tmo433wax6u6cjp4?svg=true )](https://ci.appveyor.com/project/kimkulling/assimp)
Coverity< a href = "https://scan.coverity.com/projects/5607" >
2015-06-26 07:50:19 +00:00
< img alt = "Coverity Scan Build Status"
src="https://scan.coverity.com/projects/5607/badge.svg"/>
< / a >
2015-04-06 11:24:03 +00:00
__[open3mod](https://github.com/acgessler/open3mod) is a powerful 3D model viewer based on Assimp's import and export abilities.__
2014-06-19 19:09:38 +00:00
2013-10-16 19:43:54 +00:00
#### Supported file formats ####
2013-01-19 15:37:18 +00:00
2015-04-06 11:24:03 +00:00
A full list [is here ](http://assimp.sourceforge.net/main_features_formats.html ).
__Importers__:
2013-01-19 15:37:18 +00:00
- 3DS
2015-04-06 11:24:03 +00:00
- BLEND (Blender)
2013-10-09 00:46:40 +00:00
- DAE/Collada
2013-01-20 01:50:51 +00:00
- FBX
2015-12-01 18:34:54 +00:00
- IFC-STEP
2013-01-19 15:37:18 +00:00
- ASE
- DXF
- HMP
- MD2
2015-12-01 18:34:54 +00:00
- MD3
2013-01-19 15:37:18 +00:00
- MD5
- MDC
- MDL
- NFF
- PLY
- STL
2015-12-01 18:34:54 +00:00
- X
2015-07-13 07:21:16 +00:00
- OBJ
- OpenGEX
2013-01-19 15:37:18 +00:00
- SMD
2015-12-01 18:34:54 +00:00
- LWO
- LXO
2013-01-20 21:52:17 +00:00
- LWS
2015-12-01 18:34:54 +00:00
- TER
- AC3D
- MS3D
2013-01-20 21:52:17 +00:00
- COB
- Q3BSP
- XGL
- CSM
- BVH
- B3D
- NDO
2014-05-22 16:00:02 +00:00
- Ogre Binary
2013-01-20 21:52:17 +00:00
- Ogre XML
- Q3D
2015-04-06 11:24:03 +00:00
- ASSBIN (Assimp custom format)
2016-05-08 09:55:18 +00:00
- glTF (partial)
- 3MF
2015-12-01 18:34:54 +00:00
2015-04-06 11:24:03 +00:00
Additionally, some formats are supported by dependency on non-free code or external SDKs (not built by default):
2013-08-03 23:34:38 +00:00
- C4D (https://github.com/acgessler/assimp-cinema4d)
2013-01-19 15:37:18 +00:00
2015-04-06 11:24:03 +00:00
__Exporters__:
2013-01-19 15:37:18 +00:00
- DAE (Collada)
- STL
- OBJ
2013-01-20 21:52:17 +00:00
- PLY
2014-07-24 01:02:43 +00:00
- X
- 3DS
2014-05-22 15:49:02 +00:00
- JSON (for WebGl, via https://github.com/acgessler/assimp2json)
2014-08-09 05:47:19 +00:00
- ASSBIN
2016-05-08 09:56:15 +00:00
- STEP
2016-05-08 09:55:18 +00:00
- glTF (partial)
2015-12-01 18:34:54 +00:00
2015-04-06 11:24:03 +00:00
### Building ###
Take a look into the `INSTALL` file. Our build system is CMake, if you used CMake before there is a good chance you know what to do.
2013-01-19 15:37:18 +00:00
2016-02-02 09:58:15 +00:00
### Ports ###
* [Android ](port/AndroidJNI/README.md )
2016-02-02 16:48:23 +00:00
* [Python ](port/PyAssimp/README.md )
* [.NET ](port/AssimpNET/Readme.md )
* [Pascal ](port/AssimpPascal/Readme.md )
2013-01-19 15:37:18 +00:00
2013-10-09 00:46:40 +00:00
#### Repository structure ####
2015-04-06 11:24:03 +00:00
Open Asset Import Library is implemented in C++. The directory structure is:
2013-01-19 15:37:18 +00:00
/code Source code
/contrib Third-party libraries
/doc Documentation (doxysource and pre-compiled docs)
2013-10-09 00:46:40 +00:00
/include Public header C and C++ header files
/scripts Scripts used to generate the loading code for some formats
/port Ports to other languages and scripts to maintain those.
/test Unit- and regression tests, test suite of models
2014-06-19 19:09:38 +00:00
/tools Tools (old assimp viewer, command line `assimp` )
2015-12-01 18:34:54 +00:00
/samples A small number of samples to illustrate possible
2013-10-09 00:46:40 +00:00
use cases for Assimp
2016-04-03 00:38:00 +00:00
/workspaces Build environments for vc,xcode,... (deprecated,
2013-01-19 15:37:18 +00:00
CMake has superseeded all legacy build options!)
2013-10-09 00:46:40 +00:00
### Where to get help ###
2013-01-19 15:37:18 +00:00
For more information, visit [our website ](http://assimp.sourceforge.net/ ). Or check out the `./doc` - folder, which contains the official documentation in HTML format.
(CHMs for Windows are included in some release packages and should be located right here in the root folder).
2015-04-06 11:24:03 +00:00
If the docs don't solve your problem, ask on [StackOverflow ](http://stackoverflow.com/questions/tagged/assimp?sort=newest ). If you think you found a bug, please open an issue on Github.
2013-01-19 15:37:18 +00:00
2015-04-06 11:24:03 +00:00
For development discussions, there is also a (very low-volume) mailing list, _assimp-discussions_
2015-12-01 18:34:54 +00:00
[(subscribe here) ]( https://lists.sourceforge.net/lists/listinfo/assimp-discussions )
2013-01-19 15:37:18 +00:00
2015-10-20 11:57:29 +00:00
And we also have an IRC-channel at freenode: #assetimporterlib . You can easily join us via: [KiwiIRC/freenote ](https://kiwiirc.com/client/irc.freenode.net ), choose your nickname and type
> /join #assetimporterlib
2013-10-09 00:46:40 +00:00
### Contributing ###
2015-12-01 18:34:54 +00:00
Contributions to assimp are highly appreciated. The easiest way to get involved is to submit
2013-10-09 00:46:40 +00:00
a pull request with your changes against the main repository's `master` branch.
2013-01-19 15:37:18 +00:00
2016-03-04 10:13:07 +00:00
### Donate ###
If you like assimp, consider buying us a beer (or two):
2016-03-04 15:45:40 +00:00
[Donate ](http://sourceforge.net/donate/index.php?group_id=226462 )
2016-03-04 10:13:07 +00:00
2013-10-09 00:46:40 +00:00
### License ###
2015-12-01 18:34:54 +00:00
Our license is based on the modified, __3-clause BSD__ -License.
2012-02-02 16:10:32 +00:00
2015-12-01 18:34:54 +00:00
An _informal_ summary is: do whatever you want, but include Assimp's license text with your product -
2013-10-09 00:46:40 +00:00
and don't sue us if our code doesn't work. Note that, unlike LGPLed code, you may link statically to Assimp.
2015-12-01 18:34:54 +00:00
For the legal details, see the `LICENSE` file.
2015-11-03 16:12:56 +00:00
### Why this name ###
Sorry, we're germans :-), no english native speakers ...