ASSIMP - Frequently Asked Questions (FAQ)
Am I allowed to use the library in a commercial product?
Yes. ASSIMP is licensed under a modified BSD license. Its contents in just one sentence: you may use the library for free, in commercial or non-commercial applications, but you must include our license with your product and you may not advertise with us.
Does ASSIMP depend on D3D(X)?No. AssimpView does (it uses D3D9 for rendering).
Is ASSIMP able to export models?Yes (as of 2013). Due to popular demand, assimp now supports an export API that is similar to the import side. Supported file formats include Obj, X, Collada, STL and more.
For which languages is the API provided?The ASSIMP API is provided both as a plain-C interface and as an object-oriented C++ interface, which is the main API. All ports (jAssimp, Assimp.net, ...) and even the C-style API are just wrappers around this interface. Therefore, if your project allows the use of C++, you should use the C++-API.
Is this library thread-safe?Yes. ASSIMP is completely thread-safe, as long as you create an extra 'Importer' instance for each thread. The C-API and all ports are doing this automatically for you. There are some restrictions regarding thread-safety with the -noboost workaround, don't forget to read the corresponding doc sections!
Why is it so slow?Probably because of a excessively-validating STL implementation. There's a section in the documentation which describes how to fine-tune the performance of Microsoft's STL implementation and also another to promote STLport as a good and fast alternative. Oh yes, and try a release build with full optimizations turned on first.
Can I write a new loader for the library?Sure, as long as you're able to write stable code and the format is not too exotic ... We'd highly appreciate any help. Why are you still reading this? Come on, start coding! :-) AssimpView complains about a missing d3dx9_3n.dll
The latest DirectX Runtimes should solve the problem.