Commit Graph

54 Commits (aa189c0247991fe274c80fca234b002e3921df0e)

Author SHA1 Message Date
ulfjorensen a73397198c - Bugfix #3457587: correct decomposition of matrices with negative scaling. Thanks to anonymous google account user for the fix.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1099 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-12-12 08:44:48 +00:00
ulfjorensen 487071be77 Bugfix: FCollada's special texture tag "bump" now maps to aiTEXTURE_NORMAL. Thanks to agent8261 for the hint
Bugfix: AssimpView now properly skips the leading quotation mark when being executed with a file

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1078 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-09-14 09:41:48 +00:00
aramis_acg 9d85c8834d - extract MaterialHelper and move all of its members to aiMaterial in /include.
- pull in IOhannes' patch to set the gcc default visibility for all symbols to NO and to mark ASSIMP_API with __attribute__ ((visibility("default"))).
- drop unneeded ASSIMP_API from most internal classes in /code, we just need to keep some exports on Windows to keep AssimpView alive.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1066 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-08-22 20:22:51 +00:00
aramis_acg 9edc0a9b8e merge with git://github.com/tonttu/assimp.git
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1029 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-09 14:29:32 +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 fba2f78e06 Added a workaround to guess which material applies to anonymous Collada geometry subgroups.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@841 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-19 12:49:51 +00:00
kimmi bbca6ce865 Fix g++ specific compiler warning: Usage of temporary object.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@817 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-09-15 20:29:48 +00:00
aramis_acg bd4a4fd608 further work on http://sourceforge.net/tracker/index.php?func=detail&aid=3054873&group_id=226462&atid=1067632 - first try the old node resolving algorithm (which checks for node IDs), if this fails switch to a workaround which takes both node names and IDs into account.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@815 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-09-13 14:40:25 +00:00
aramis_acg e440fb2769 NDOLoader: improve reusability of some temporary vectors.
ColladaLoader: fix http://sourceforge.net/tracker/?func=detail&aid=3054873&group_id=226462&atid=1067632, thanks to Adario for the report.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@814 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-09-11 19:44:06 +00:00
ulfjorensen 960f7defd7 Workaround: Collada loader combines alot of animations each affecting a single node into a combined animation. The stupidity of some export plugins knows no bounds.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@812 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-09-04 15:36:38 +00:00
ulfjorensen a9161ede18 Bugfix WIP: collada instanced nodes, still working on it.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@751 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-06-04 14:36:41 +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
adario 35c97d169e Fixed camera FOV computation in the ColladaLoader.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@675 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-13 15:45:18 +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
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