Commit Graph

154 Commits (2ba3d956d1220be84b63ef707c9314dc37eceb41)

Author SHA1 Message Date
ulfjorensen 6d2857ed4a Bugfix: collada loader now preserves empty data arrays to work around stupid exporters writing empty animation channels
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1246 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-05-05 07:38:14 +00:00
aramis_acg ec6c62e005 - consistent use of ai_assert instead of assert.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1241 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-04-22 23:22:40 +00:00
ulfjorensen 5975f3eff2 - Bugfix: fixed Collada parser to accept empty data elements again
- Workaround: added a little extra code to handle texture filenames of Maxon Cinema Collada Exporter 

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1231 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-04-02 10:43:18 +00:00
aramis_acg b908b00f96 - Collada: read falloff and hotspot_beam spotlight properties to be compatible with OpenCollada. Thanks to gargaj for the patch.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1201 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-03-14 02:29:17 +00:00
aramis_acg 4dbf539b44 - update license header. Update copyright year and unify naming: our name is 'assimp', not 'ASSIMP'.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1147 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-02-03 03:38:30 +00:00
aramis_acg c12fadc93b - make fast_atof_move a template and rename it to fast_atoreal_move.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1125 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-01-31 16:18:32 +00:00
aramis_acg ff705e6fa4 # Collada: allow empty meshes. Thanks to Mark Page for the patch (https://sourceforge.net/projects/assimp/forums/forum/817653/topic/4628297).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1071 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-08-23 16:27:07 +00:00
aramis_acg 73d109c7cc # bugfix [3295074]: copy'n'paste bug in ReadSamplerProperties would cause y-axis sampler state to be assigned to the respective x values.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@975 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-29 21:32:13 +00:00
aramis_acg 6f30639d7f - refraing from using magic numbers like 0xffffffff all over the repository, rather use UINT_MAX/SIZE_MAX ..
- minor re-formatting and refactoring at some old code spots.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@970 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-22 21:29:18 +00:00
aramis_acg 0fc965da91 Rename strtolxxx family of functions, all functions returning unsigned integers now carry an 'u' in their name (this is for compatibility with Irrlicht's fast_atof see http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?p=243079#243079).
strtol10 -> strtoul10
strtol16 -> strtoul16

strtol8  -> strtoul8
strtol10_64 -> strtoul10_64
strtol_cppstyle -> strtoul_cppstyle
strtol10_s -> strtol10


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@923 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-03-23 14:26:19 +00:00
ulfjorensen ec6ef9f145 Added a workaround to the Collada parser to handle certain XML tags which irrxml doesn't handle well. Corrected formatting on the way.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@842 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-19 14:06:32 +00:00
ulfjorensen 136ef7609d Bugfix: removed unnecessary windows.h include from Quake3BSP loader
Bugfix: added workaround to allow reading invalid Collada files sporting negative indices into data arrays

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@824 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-10-04 18:12:35 +00:00
aramis_acg dbcc1902ed ColladaParser: skip over extra <camera>,<light>,<material>,.. chunks contained within <extra> blocks. Thanks to Juha Vesanen for the fix.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@793 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-08-23 10:33:30 +00:00
ulfjorensen e3fffb7a52 - added some more empty element checks to Collada loader
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@792 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-08-22 11:40:36 +00:00
ulfjorensen 2e909b35d8 Bugfix: Collada node instances are correctly loaded and resolved now.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@752 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-06-07 14:02:56 +00:00
ulfjorensen 219f9fadc6 Bugfix: removed misuse of "static" attribute preventing multithreaded usage of the importer
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@750 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-06-04 14:05:06 +00:00
aramis_acg 31ff5d27eb fix: colladaloader is now a bit more tolerant to empty top-level (library) elements. See https://sourceforge.net/tracker/index.php?func=detail&aid=3008871&group_id=226462&atid=1067632
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@744 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-29 20:53:42 +00:00
aramis_acg 9d978918d1 colladaloader now skips over empty data arrays.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@736 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-25 14:37:28 +00:00
aramis_acg cd301ff090 collada loader now longer fails if the accessor type attribute comes before the accessor name. Thanks to Christopher Dissauer to point it out (http://sourceforge.net/projects/assimp/forums/forum/817653/topic/3716168).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@733 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-21 22:47:31 +00:00
aramis_acg 367a452ed9 colladaloader: fix <extra> handling.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@730 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-20 13:41:03 +00:00
ulfjorensen 6e133a6cd9 - Fixed compilation for some targets
- Removed BOOST_FOREACH usage in ColladaParser::ReadPrimitives() because they seem to cause problems in NOBOOST builds

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@726 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-18 12:20:09 +00:00
aramis_acg 7cea2eb497 Change date in license header to 2006-2010. This involves updating quite a few files, sorry.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@661 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-10 15:30:22 +00:00
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
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
ulfjorensen f85d7b63ef - Bugfix: Collada parser did not skip unknown material properties correctly, leading to strange XML error messages
- Bugfix: Collada parser should read tangents / bitangents correctly now

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@503 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-11-22 12:46:49 +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
aramis_acg 1452a7a83d FIX: ColladaLoader now ignores missing 'meter' attribute in Collada files produced by C4D. Adding a c4ddae test file. Thanks to Tobias Rittig to point it out.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@483 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-09-26 21:54:56 +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 897a7f7ae3 - Adding a collada test file with two UV channels.
- Fixing ColladaLoader's error message if an UV set is invalid.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@401 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-23 18:46:25 +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
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
ulfjorensen 87ee56efd3 - Bugfix: BikeFromXSI.dae loads again.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@377 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-06 22:57:43 +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
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
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 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
alil f601c3c5b9 made it work again under linux
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@261 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-12-04 22:01:35 +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
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 fe3c008301 - added another boost dependency.
- further work on the collada loader. Should load static geometry correctly now, but still not properly integrated
- added some Collada sample files. The license is hopefully fine with this.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@245 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-20 17:42:55 +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