Commit Graph

138 Commits (78d04c137d4a7ddb04f0a4cd9e7640fb475883fd)

Author SHA1 Message Date
aramis_acg 762a7df46a Revamp exception handling. ImportErrorException renamed to DeadlyImportError to avoid silent regressions. Exceptions now thrown by value, and caught by reference. Put guards in all C++ and C API functions to avoid unwanted exception propagation across module and language boundaries.
PLEASE TEST CAREFULLY IF THIS SHOULD CAUSE REGRESSIONS.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@617 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-18 17:00:12 +00:00
aramis_acg 5738860990 - Change BaseImporter::GetExtensionList to add all known file extensions to a std::set, so uniqueness is guaranteed. Also rewrite all related functions in Importer. NOTE: This does *not* change the public interface.
- FIX build error on vc8/release-noboost x64, ConvertUTF.c had wrong PCH settings.
- ADD knowext and listext verbs to assimp_cmd, add some raw docs.
- Update unit tests to reflect these changes. Currently I keep getting failures in some tests, this needs to be resolved *urgently*.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@567 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-02 17:38:01 +00:00
ulfjorensen 3e529ac1fc Bugfix: Collada animation parser now handles multi-value data types correctly. Or at least I hope so.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@555 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-02-26 15:17:19 +00:00
ulfjorensen 993ca25cdb Bugfix: fixed rather stupid typo in Collada anim keyframe interpolation
Bugfix: Collada Loader now respects skin controller bind shape matrix

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@549 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-02-22 18:06:50 +00:00
aramis_acg 17326515d4 Get rid of warnings on GCC4.4 with -wall
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@541 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-02-06 23:52:41 +00:00
ulfjorensen 6d3c8b3bc7 Bugfix: Collada loader now translates bone names to proper node names so that users should be able to associate the correct nodes to bones, equal what addressing scheme was used in the Collada file
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@526 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-01-10 10:38:52 +00:00
aramis_acg 46809f0dfa COLLADA: Add support for <reflectivity> elements. This maps to AI_MATKEY_REFLECTIVITY.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@504 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-11-22 14:06:51 +00:00
aramis_acg 1b8c8561fd FIX: ColladaLoader now skips empty init_from-Tags produced by C4D's heroic Collada exporter.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@496 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-10-22 08:08:04 +00:00
ulfjorensen 12070a1d52 Bugfix: made various internal structures namespace-local to avoid strange linker issues in case of name conflict
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@466 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-08-18 16:17:27 +00:00
ulfjorensen 98e53f976e - Bugfix: IrrXML loader ignores trailing whitespace on closing tags now
- Bugfix: Collada loader now filters bone vertex weights with weight zero - blame XSI collada export.
- Bugfix: Collada animation resolver now also considers IDs when searching for nodes by name

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@460 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-08-01 20:20:22 +00:00
ulfjorensen 3f2fa97f18 - Bugfix: Collada-Loader now also reads animations containing multiple channels
- Bugfix: Collada-Loader new resolves subelement animation channels correctly
- silenced some warnings in the B3DImporter code. There are a lot more over there, though.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@459 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-08-01 13:57:29 +00:00
ulfjorensen fe58fa6603 - Bugfix: Collada loader now loads meshes with mixed textured / non-textured parts correctly. At least I hope so, the example files load fine now.
- Bugfix: implemented Collada Look-At transformation type. Untested due to lack of testing material

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@428 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-06-02 20:03:08 +00:00
aramis_acg d6aacefa1e - BUGFIX: ColladaLoader handles multiple UVs/VColors correctly now. Thanks to Ingrater to point it out.
- ScenePreprocessor will now detect 3D UV channels with all-empty third component.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@400 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-23 14:13:20 +00:00
kimmi 9dfe7764b2 - Fix a compiler warning ( double to float ).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@392 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-18 18:03:54 +00:00
aramis_acg 0c762117b8 ColladaLoader does now load transparency. hacky, but it could work.
Cleaned up Collada material importing. No changes to other loader parts.
Adding missing FileSystemFilter.h to vc8 build config.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@383 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-10 22:51:12 +00:00
aramis_acg f3324da6ea ColladaLoader does now utilize SkeletonMeshBuilder to build animated meshes for animation skeletons.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@382 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-10 22:10:11 +00:00
ulfjorensen e471b966c5 - Collada loader now supports node animations
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@375 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-06 17:00:03 +00:00
aramis_acg 29c33760e4 Triangulation:
- FEATURE: Concave polygons are now triangulated correctly.
 - internal face order is ccw now, flipwinding part of converttolh flag
 - added test files for the various formats supporting such polygons

FindDegenerates: 
 - improved behaviour when processing polygons, more tolerant.

Obj: 
 - material files are now properly read using the given IOSystem 
 - redirecting some std::cerr calls to our logger 
 - spaces and tabs are now allowed at the beginning of a line 

Viewer: 
 - max smoothing angle for normals is set to 90 deg now

vc9-workspace 
 - added assimp_cmd, renamed some virtual folders to be sexier.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@374 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-02 15:16:01 +00:00
ulfjorensen c89944b2af - Collada loader now loads bones
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@370 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-27 20:43:22 +00:00
ulfjorensen 74204086ae - Collada loader now also loads skinned meshes, although still as static meshes. Preparation step, more to come.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@368 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-25 21:10:28 +00:00
ulfjorensen 68d7e43056 Bugfix: Collada loader now reads scenes with translucent materials correctly again.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@365 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-12 14:15:57 +00:00
ulfjorensen f57ef267bd Bugfix: Collada loader now produces correct UP direction again.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@362 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-10 18:57:54 +00:00
aramis_acg 4bbc03332b General
- Added format auto-detection to most loaders
  - Simplified BaseImporter::CanRead() with some utility methods
  - improved fast_atof -> no overruns anymore. Fuck you, irrlicht.
  - added assimp_cmd tool to allow command line model processing. Mainly adebugging tool for internal purposes, but others might find it useful, too.
  - vc8/vc9: revision number is now written to DLL version header
  - mkutil: some batch scripts to simplify tagging & building of release versions
  - some API cleanup
  - fixing some doxygen markup (+now explicit use of @file <filename>)
  - Icon for assimp_view and assimp_cmd

3DS
  - Normal vectors are not anymore inverted in some cases
  - Improved pivot handling
  - Improved handling of x-flipped meshes

Collada
  - fixed a minor bug (visual_scene element)

LWS 
  - WIP implementation. No animations yet, some bugs and crashes.
  - Animation system remains disabled, WIP code
  - many test files for LWS, but most of them test the anim support, which is, read above, currently disabled.

STL
  - fixing a log warning which appears for every model
  - added binary&ascii test spider, exported from truespace

MD3 
  - Cleaning up output tags for automatically joined player models.


IRR
  - Fixing coordinate system issues. 
  - Instance handling improved.
  - Some of the reported crashes not yet fixed.

PretransformVertices
  - Numerous performance improvements.
  - Added config option to preserve the hierarchy during the step.

RemoveRedundantMaterials
  - Added config option to specify a list of materials which are kept in every case.

UNREAL
  - Added support for the old unreal data format (*.a,*.d,*.uc)
  - tested only with exports from Milkshape
  - more Unreal stuff to come soon



git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@356 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-05 22:32:13 +00:00
ulfjorensen 732884e2f4 - Bugfix: ColladaParser now properly tunnels XML reading through the Assimp IO System
- Bugfix: IrrXML-IOWrapper now properly inherits the irr interface
- moved some "using namespace" directives out of the header

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@351 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-03 15:43:26 +00:00
aramis_acg fd9769eae6 MD2
- fixed UV coords
 - added further test models

Collada
 - fixed invalid aiStrings

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@343 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-12 15:58:55 +00:00
aramis_acg c865999420 Collada
- collada 1.5.0 textures are readable now
 - cube and volume maps and mip initializations are skipped
Material system
 - unified texture types. Added lightmap, displacement, reflection and 'unknown'. Everyone should be happy now (intending to remove ambient textures from the API).

ComputeUV
  Changed mapping axis property to vec3 
  Adapted step
   WARN: produces mirrored uv coords now. LH issue.

IRR  
  Updated to new texture types

3DS
  Updated to new texture types

NFF
  Updated to new texture types

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@340 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-11 20:56:05 +00:00
aramis_acg af87633c9f Fixes to make gcc happy.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@339 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-08 23:19:11 +00:00
aramis_acg 7678b8e1be Collada
- added support for lights and cameras
 - added support for tangents and bitangents
 - added support for more than 2 UV components.
 - fixed node naming
 - beta support for instance_node elements. Works in most cases.
 - added support for more complex materials
 - UV index is now set correctly. hopefully.
 Material system
 - fixed potential problems regarding aiUVTransform
 - added utility macros for the base keys

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@338 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-08 22:55:51 +00:00
aramis_acg d41f570dc0 Added support for compressed x files (all files from dx sdk, except car2.x, work, no further tests yet).
Added a working makefile for mingw, provides more configs now. Not perfect yet.
Added decompression part of zlib (inflate).
Moved IrrXML to ./contrib dir.
Moved some IRR/IRRmesh shared code.
FIXME: makefile for gnu/linux is untested yet.
Code cleanup.
Unified #ifndef ASSIMP_BUILD_nnn_IMPORTER directives.
OBJ loader supports map_bump, map_ka, map_ks, map_ns now.
Endianess conversion in the ply loader is correct now.
Changed IRR/IRRMESH coordinate system conversion. Not absolutely right now, but better than before.


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@305 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-18 23:48:25 +00:00
ulfjorensen 244e2468c6 - Bugfix: ColladaLoader failed on <extra> tags in geometry elements
- Bugfix: ColladaLoader reads and filters mesh subgroups without faces now. Who the fuck writes them anyways? I'm looking at you, Maya export!
- Made the VC9 workspace load again. Thanks to Aramis for the hints.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@302 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-18 00:52:20 +00:00
aramis_acg 84f8e3c68c Temporary fix: collada loader strips 'file://' from paths now.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@289 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-12 00:00:13 +00:00
aramis_acg b73cb1c569 HMP loader returns quads now, cleaned up the code a bit. Still longer than necessary.
BVH loader supports arbitrary rotation/translation orders now. Fixed a crash issue, added test models with ZYX and ZXY rotation order.
Updated CREDITS.
'Beautified' pushpack/poppack.
Collada loader does now also load XML files if 'COLLADA' is found in the header.
Fixed path issues in several IRR test files.


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@282 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-10 17:58:06 +00:00
ulfjorensen 917db45b3c - further Collada work: materials are now loaded from profile_COMMON, meshes are properly split up at material borders
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@260 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-12-04 17:06:26 +00:00
alil e9fc71cc60 fixed some linux compilation issues
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@257 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-30 20:32:53 +00:00
ulfjorensen 5639220859 - corrected example code in the documentation. Thanks to Ingrater to point it out.
- Further work on the Collada loader. Halve way through the material import, I have to leave it here and continue at home.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@253 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-27 15:54:35 +00:00
ulfjorensen 85a487f6b8 - Bugfix: ColladaLoader node rotation was miscalculated
- ColladaLoader now supports more primitive types
- ColladaLoader now honours the up-vector specification
- moved Collada temporary structures to separate Helper header
- fast_atof_move() now also eats localized numbers with comma separator (e.g. 0,3210) correctly

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@251 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-26 15:45:34 +00:00
ulfjorensen 78969d0a95 - finalized Collada mesh part - can read static models now, using dummy materials
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@246 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-25 17:58:11 +00:00
ulfjorensen 1083d85b2c - first draft of the Collada importer. Compiles and runs fine, but not functional yet.
- added a "rotation around arbitrary axis" function to the matrix class

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@238 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-12 17:07:44 +00:00