Commit Graph

116 Commits (adc3de3882824f82825933e7d36f372a1672d317)

Author SHA1 Message Date
Séverin Lemaignan 3b1464a6d9 [pyassimp] OpenGL Viewer: improved camera behaviour, simple keyboard control
While here, lots of cleaning + short docs
2012-10-23 14:56:01 +02:00
Séverin Lemaignan ab268b9f48 [pyassimp] Added a NullHandler to the logger
While here, many cleaning in log messages + promote some warning to errors
2012-10-23 14:55:53 +02:00
Séverin Lemaignan 18825179d0 [pyassimp] Support Python3
This include the renaming of __init__.py in core.py to solve tricky imports issues

sample.py runs correctly, except that the ctype structure returned is not
complete. The issue is very similar to the one we have with 32bits/64bits
issues

Removed the PyAssimp3 subproject project.

To maintain source compatibility between py2 and py3, python >= 2.6 is now required
2012-10-23 14:55:53 +02:00
Séverin Lemaignan a6a30233e1 [pyassimp] Added a setup.py 2012-10-23 14:55:53 +02:00
Séverin Lemaignan 79ed83244c [pyassimp] Added an simple OpenGL viewer for pyassimp
Based on pyOpenGL.

Uses VBO/IBO for reasonable performances.

Support only basic materials (no textures)
2012-10-23 14:55:53 +02:00
Séverin Lemaignan 36c424bfb2 [pyassimp] Import post-processing constants in pyassimp 2012-10-23 14:55:53 +02:00
Séverin Lemaignan 4e9214c624 [pyassimp] Apply post-processing on ctypes ASSIMP structure
- bind meshes to their materials
- add transformations to cameras
2012-10-23 14:55:53 +02:00
Séverin Lemaignan 511f80d047 [pyassimp] Use numpy when possible
It allows for faster access to data, brings useful methods and is
pyOpenGL-friendly

It eases manipulation of matrices and vectors (many operations like
product, transposition, etc. are available)

numpy.array are also directly usable in many places in pyopengl.

And make sure we store floats as float32 to please OpenGL

Update sample.py to be happy with numpy arrays
2012-10-23 14:55:52 +02:00
Séverin Lemaignan 0bda286360 [pyassimp] sample.py: only iterate on existing texture coords 2012-10-23 14:55:52 +02:00
Séverin Lemaignan 3518232ddb [pyassimp] Updated the README to reflect recent changes 2012-10-23 14:55:52 +02:00
Séverin Lemaignan 8e9921fe32 [pyassimp] Moved test scripts to scripts/ 2012-10-23 14:55:52 +02:00
Séverin Lemaignan b20b1dfceb [pyassimp] Updated sample.py to match the new API
While here, added simple node walking
2012-10-23 14:55:52 +02:00
Séverin Lemaignan 7000ea05c5 [pyassimp] Large rewrite: more generic, easier to use
Main changes:
- dynamic creation of idiomatic python fields corresponding to ASSIMP ones,
- hidding of pointers,
- use of numpy for transformation and mesh data storage

For instance, to access the list of meshes of a children of the root
node, previously we did:

scene.mRootNode.contents.mChildren[1].contents.mMeshes

Now, it is:
scene.rootnode.children[1].meshes

Arrays are now regular Python list.

Also added a 'post-processing' to access directly to certain objects,
and not through their index. For instance:

Before:

mymesh_id = scene.mRootNode.contents.mChildren[1].contents.mMeshes[2]
mymesh = scene.mMeshes[mymesh_id]

Now:
scene.rootnode.children[1].meshes[2]

Initialization of the Python wrappers is not delayed anymore: everything
is done during the loading (which leads to long start time, but prevent
unexpected slowing at runtime)

This commit also remove several 'ad-hoc' manipulation that should not
be needed anymore.

While here, use Python logging when necessary.
2012-10-23 14:53:00 +02:00
Séverin Lemaignan bed0e4e83f [pyassimp] Add /usr/lib to the path where to look for libassimp 2012-10-23 14:52:47 +02:00
Séverin Lemaignan 848c875ec2 [pyassimp] Update, fix and beautify structs.py
structgen.py has been modified to make the resulting structs.py
more readable: comments should now correctly appear next to the
fields in the generated structs.py

Do not discard the size_t type. size_t was wrongly replaced by uint in ctypes
This caused corruptions when running pyassimp with a 64bits assimp library

While here, updated the max size of some meshes attributes (that leads
to corruptions as well)

While here, update paths to find the assimp headers

Updated structs.py to match assimp 2.0.863 (Ubuntu 12.04). It has been
also tested with libassimp as build from the trunk.
2012-10-23 14:41:52 +02:00
scholza 9687531b20 jassimp initial import
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1297 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-07-24 19:11:04 +00:00
aramis_acg f7c232cfe8 merge git://github.com/gellule/assimp.git
Before, neither the texture index nor its semantic were kept in the
returned output. Now GetMaterialProperties returns a (name, color,
material, texture) tuple. Name is the name of the material. Color is a
dictionary of color properties. Material is a dictionary of material
properties. Textures is a triply nested dictionary addressed by the
following: textures[index][semantic][key]. See assimp documentation for
the meaning of index, semantic, and keys in general.



git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1106 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-01-11 00:27:49 +00:00
aramis_acg 380737c4c4 merge git://github.com/gellule/assimp.git
the strings used in materials and elsewhere in assimp. Because of this,
in PyAssimp3 strings in materials don't work properly on 64 bits
platforms. This commit adds a StringUInt32 ctypes structure and use it
in GetMaterialProperties as a workaround.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1105 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-01-11 00:26:54 +00:00
aramis_acg 3548127f02 # PyAssimp3: add dynlib to dll search path.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1093 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-11-30 13:15:12 +00:00
aramis_acg 6dc3bc1c88 # PyAssimp: fix data type for aiString::length. Thanks to Gellule for the patch.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1091 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-11-29 13:34:48 +00:00
mmathias01 7b14ea616e Update iOS README.txt, improve iOS build script and toolchain files.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1090 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-11-24 11:58:24 +00:00
mmathias01 9a4386ad16 Initial iOS build script and CMake toolchain files.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1089 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-11-24 11:01:19 +00:00
mmathias01 213c6c95c3 Creating initial iOS port folder and README, real iOS build scripts to follow
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1087 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-11-24 07:28:22 +00:00
aramis_acg dc2bf5d6bd + add rudimentary Python3 version of PyAssimp. Conversion using 2to3 plus some manual tweaks.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1057 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-20 00:36:26 +00:00
aramis_acg 969c2ccf9f - PyAssimp: move structsgen.py script away from /scripts and place it in a sub-folder of port/PyAssimp. This is consistent with the way how SWIG-dependent bindings handle such files.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1049 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-07-17 01:55:58 +00:00
aramis_acg 1decdf999c + really add rudimentary test script to batch-load all test files using pyassimp
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@952 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-19 20:51:59 +00:00
aramis_acg 9350d0e1a6 - update pyassimp genstructs script to work with the latest headers, add rudimentary test script to batch-load all test files using pyassimp
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@951 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-19 20:48:33 +00:00
aramis_acg 473dae7876 + add Delphi Units to access the C DLL interface to /port. Thansk to Ed Diana for the patch. This relates to tracker id [3212646] (https://sourceforge.net/tracker/?func=detail&aid=3212646&group_id=226462&atid=1067634)
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@945 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-08 16:05:46 +00:00
aramis_acg d54a841f06 - remove unneeded Assimp.net post build event.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@866 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-23 19:01:15 +00:00
aramis_acg 03e6ab451d - update Assimp.NET. Fix SWIG output folder & add missing ProgressHandler.h %include.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@865 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-23 08:45:32 +00:00
klickverbot 3bf11785c8 Whitespace cleanup.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@859 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-21 19:57:34 +00:00
klickverbot 6744cb32bc Updated D bindings to the new API.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@858 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-21 19:52:11 +00:00
aramis_acg 05546ec7b6 really update C# Readme.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@849 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-21 16:43:41 +00:00
aramis_acg 3b35d2216b - update Assimp.net viewer application to take the model file to be loaded from the command line.
- add a screenshot to proof that it works ;-)
- update Readme.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@848 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-21 16:41:36 +00:00
aramis_acg 5ded0698e1 - update dreadful note in /port/swig
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@847 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-21 16:14:43 +00:00
klickverbot c4b8389d6e Mark the std::vector wrappers for the C-style arrays as const.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@838 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-10 19:34:06 +00:00
rave3d 4ad0d569f3 Ingnore an error producing SetProperty method on AssimpSwigPort.i
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@789 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-08-06 18:41:05 +00:00
adamdavidson 1f68e8c6f3 Update Assimp.NET project files to always build x86 (32 bit) to support Managed Direct X even on 64 bit Windows for Debug and Release targets.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@788 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-23 20:51:05 +00:00
adamdavidson 1c0e25288b Update of C#/.NET bindings plus working Managed DirectX Viewer that displays standard DirectX Fixed Function Materials (Ambient, Diffuse, Specular, Emissive) and the first set of texture coordinates if contained in the model.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@782 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-12 13:13:43 +00:00
klickverbot e6516329b9 SWIG: Even more output parameter handling.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@776 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-09 18:00:34 +00:00
klickverbot edb2fca8d6 SWIG: More output parameter handling using <typemaps.i>.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@770 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-08 20:09:50 +00:00
klickverbot 646357bfc2 Added missing member array handling (via the ASSIMP_*_ARRAY macros) in the SWIG port.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@769 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-07 22:01:51 +00:00
rave3d e34671e6b3 adding some missing files
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@742 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-27 18:29:18 +00:00
rave3d d91f661082 commit new try of c# bindings
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@741 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-27 18:28:02 +00:00
rave3d 6079125444 some fixes in assimp.net
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@724 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-13 17:08:35 +00:00
rave3d 7d03ef514e git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@711 67173fc5-114c-0410-ac8e-9d2fd5bffc1f 2010-04-27 16:52:24 +00:00
rave3d b4f5d42094 correct some compile errors
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@710 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-27 16:51:22 +00:00
rave3d fcc9642ac7 git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@709 67173fc5-114c-0410-ac8e-9d2fd5bffc1f 2010-04-27 16:41:21 +00:00
rave3d e05bc231e1 git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@708 67173fc5-114c-0410-ac8e-9d2fd5bffc1f 2010-04-27 16:36:23 +00:00
klickverbot ea2bbc37d1 [dAssimp] Added note that the D bindings have yet to be adapted for 64 bit builds of Assimp.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@687 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-16 21:15:51 +00:00