Fast Python bindings for Assimp, Cython-based, BSD3 license.
It uses the same function names as the original library, so examples from c++ tutorials can be used with minor changes.
It has been tested on:
- Windows 7, 10
- Linux
- Mac
- Python 3.8 - 3.10
- Pypy
from assimpcy import aiImportFile, aiPostProcessSteps as pp
flags = pp.aiProcess_JoinIdenticalVertices | pp.aiProcess_Triangulate
scene = aiImportFile('some_model.3ds', flags)
print('Vertex 0 = {}'.format(scene.mMeshes[0].mVertices[0]))
Matrices, quaternions and vectors are returned as Numpy arrays.
- Numpy >= 1.24.4
(Assimp 5.4.3 is included in the binary wheel)
Open Asset Import Library (assimp)
Copyright (c) 2006-2021, assimp team
All rights reserved.
Please visit our docs to read the full license and to know more about your rights regarding Assimp.
The easiest way is with Pip:
pip install assimpcy
If that doesn't work on your system or if you want to compile by yourself, please check Installation for instructions.
- Cameras
- Lights
- Export functionality (basic conversion is working)
Those might be added in the future.
- Improved Memory Management: Optimizations to ensure better performance and lower memory usage.
- Format Conversion Functionality: Added support for converting models between various formats using
convertFile
.
- Scene Material Properties Update:
Thescene.material.properties
structure has been updated to support modern file formats.
This change is incompatible with the old naming convention. Please refer to the updated documentation for guidance on extracting material properties in this release.
Thank you for using AssimpCy! 😊 The development of new features depends on your support. If this library is useful to you, consider contributing a donation to help me dedicate more time to improve it. Future enhancements will be prioritized based on the support received.
Upcoming Features:
- Export functionality.
- Performance improvements.
- 🚀 Implementation of [your idea here].
Support development and make it happen! 💸
Please follow the guide on the wiki
And what about the name? Well, cyassimp was already taken 😞