66 lines
1.6 KiB
Plaintext
66 lines
1.6 KiB
Plaintext
|
PyAssimp3 Readme
|
||
|
---------------
|
||
|
|
||
|
|
||
|
-- a simple Python3 wrapper for Assimp using ctypes to access
|
||
|
the library. Works with Python 3 upwards.
|
||
|
|
||
|
|
||
|
Note that pyassimp is by no means considered mature. It works,
|
||
|
but it is far away from wrapping Assimp perfectly.
|
||
|
|
||
|
|
||
|
USAGE
|
||
|
=====
|
||
|
|
||
|
To get started with pyAssimp, examine the sample.py script, which
|
||
|
illustrates the basic usage. All Assimp data structures are
|
||
|
wrapped using ctypes. All the data+length fields in Assimp's
|
||
|
data structures (such as 'aiMesh::mNumVertices','aiMesh::mVertices')
|
||
|
are replaced by simple python lists, so you can call len() on
|
||
|
them to get their respective size and access members using
|
||
|
[].
|
||
|
|
||
|
For example, to load a file named 'hello.3ds' and print the first
|
||
|
vertex of the first mesh, you would do (proper error handling
|
||
|
substituted by assertions ...):
|
||
|
|
||
|
> from pyassimp import pyassimp, errors
|
||
|
>
|
||
|
> try:
|
||
|
> scene = pyassimp.load('hello.3ds')
|
||
|
> except AssimpError, msg:
|
||
|
> print(msg)
|
||
|
> return
|
||
|
|
||
|
> assert len(scene.meshes)
|
||
|
> mesh = scene.meshes[0]
|
||
|
|
||
|
> assert len(mesh.vertices)
|
||
|
> print(mesh.vertices[0])
|
||
|
|
||
|
> # don't forget this one, or you will leak!
|
||
|
> pyassimp.release(scene)
|
||
|
|
||
|
|
||
|
INSTALL
|
||
|
=======
|
||
|
|
||
|
PyAssimp requires a assimp dynamic library (DLL on windows,
|
||
|
so on linux :-) in order to work. The default search directories
|
||
|
are:
|
||
|
|
||
|
- the current directory
|
||
|
- on linux additionally: /usr/local/lib
|
||
|
|
||
|
To build that library, refer to the Assimp master INSTALL
|
||
|
instructions. To look in more places, edit ./pyassimp/helper.py.
|
||
|
There's an 'additional_dirs' list waiting for your entries.
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|