Commit Graph

157 Commits (382f5fde5f9931790f115ad4261eaee28ec610e7)

Author SHA1 Message Date
Gargaj 523d87bbe7 use 0..fileSize as progress metric (easier for loaders) 2014-08-07 08:22:47 +02:00
Gargaj 6b8cbe5c83 this isn't needed anymore 2014-08-05 00:10:23 +02:00
Gargaj dbc553343c Granulate file loading too 2014-08-05 00:05:18 +02:00
Gargaj dfe1f03e5b Split off postprocessing progress 2014-08-04 23:57:08 +02:00
Léo Terziman 358819c1a0 Fixed error in GetProperty when accessed from external libraries using a different language (using swig for example) 2014-03-20 15:32:12 +01:00
Léo Terziman 843e56c252 Added matrix properties 2014-02-28 15:21:10 +01:00
Léo Terziman e6c5095e5b In Assimp: fixed use of macro ASSIMP_BUILD_NO_VALIDATEDS_PROCESS 2014-01-17 12:00:54 +01:00
Léo Terziman 4e7b59be55 Improving homogeneity of DEBUG macro for improved portability with compilers other than Visual Studio 2014-01-17 11:43:48 +01:00
ulfjorensen 0693df00c5 - Bugfix: catched a null pointer crash when post processing removed everything from an invalid scene
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1249 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-05-23 09:25:40 +00:00
aramis_acg 078c1cd621 # bugfix Importer::GetImporterIndex
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1236 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-04-22 22:59:15 +00:00
aramis_acg e479355d0a + add aiImporterDesc API to hold importer meta information.
- cleanup some Importer APIs: FindLoader -> GetImporter, add some utility APIs. Note that this is a breaking API change.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1232 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-04-18 23:07:52 +00:00
aramis_acg 6fa251c2f2 - unify naming of all header files. Obviously, this is a breaking change that affects all users.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1150 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-02-03 17:04:06 +00:00
aramis_acg 075b1acaf0 - move include/ to include/assimp/ to have consistent header locations between installed and trunk version.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1148 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-02-03 16:25:12 +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
kimmi d5bd7009a6 - Update : Apply simple patch for debian-specific build-fixes: adapt architecture-macro.
- Bugfix : Fix a type in FixNormalStep.
- Bugfix : Fix a missing exception in Obj-Importer, texture coordinate import.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1079 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-09-23 16:45:17 +00:00
aramis_acg 665f73861e - move importer and postprocessing step construction chain to separate files to make them available to the exporter part.
+ introduce aiScene::mPrivate. This is a potentially breaking API change. The new member is added at the end of the structure though, so serious regressions are not to be expected.
+ add a mPreprocessing parameter to all Export API calls. Allow exporters to specify further PP steps to be executed prior to handing control to them. The entire export API now operates on a copy of the scene that the user passed in.
- mass refactoring: all constructors of BaseProcess/BaseImporter inherited classes are public now and Importer will perhaps feel a bit sad after having loft all of its friends.
# fix const correctness in SceneCombiner


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1060 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-08-01 20:58:31 +00:00
aramis_acg 1400ae79e7 + add first prototype version of the IFC-STEP loader. Loads many test models fine but does not support some of the more sophisticated format features.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@979 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-06 23:55:38 +00:00
aramis_acg ea3372f232 # pk3: fix CanRead()
# fix small typo in Importer.cpp

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@962 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-22 16:08:31 +00:00
aramis_acg a6e0a5075f + integrate Debone-Process into Assimp. This step was contributed by mick-p, see [3262561] (https://sourceforge.net/tracker/?func=detail&aid=3262561&group_id=226462&atid=1067634)
- refactor ProcessHelper.h. Some functions now reside in ProcessHelper.cpp, which is new.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@946 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-15 15:09:53 +00:00
kimmi dbfa8a4f37 BUGFIX : Fix an android-specific build issue in the logging.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@919 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-03-16 22:55:28 +00:00
aramis_acg 3baec40ade # fix memory leak in Importer -- progress handler was never deleted. Thanks to dee_ment to point it out (see https://sourceforge.net/tracker/index.php?func=detail&aid=3134561&group_id=226462&atid=1067632).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@877 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-12-11 15:50:14 +00:00
aramis_acg 86629f5c10 - remove old test code stub. I have no idea how this ugly piece of shit managed to survive *that* long.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@874 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-12-06 19:49:55 +00:00
ulfjorensen a9e96e2f9b - added a new post processing step to split up meshes into submeshes with a limited number of bones.
- fixed some wording details

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@864 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-22 18:14:51 +00:00
kimmi e0e0bf3c1e BUGFIX: Use correct not-importing preprocessor declaration for blender importer.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@836 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-05 20:31:13 +00:00
aramis_acg 8a336e8876 - Update build for xcode - parallel and universal, plus PCH. Update XCode project to reflect current state of the tree (thanks to Jørgen P. Tjernø for the patch)
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@834 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-02 18:19:49 +00:00
aramis_acg 8a27ecf827 Fix: FindLoader() now converts the input file extension to lowercase.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@828 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-10-13 19:34:44 +00:00
aramis_acg c5c5338397 Add first version of the planned progress feedback API to the public Cpp API. Currently, progress reporting is done between each major import stage.
Fix various issues with the vc9 solution and assimp_cmd.
Declare some more Importer methods const. This marks them as safe to use from within a progress callback.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@806 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-08-26 18:16:12 +00:00
aramis_acg a9fd7651fa Print version line to log upon loading a new file. This should aid at debugging incoming bugreports with logs attached.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@804 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-08-26 14:20:28 +00:00
aramis_acg 81bebcd0ec Add basic support for the IZWARE NENDO file format (extension: ndo). The loader has been tested with files in format version 1.0, 1.1 and 1.2. Materials and textures are read but ignored for now.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@791 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-08-09 08:24:16 +00:00
aramis_acg aae8637666 Add GLOB_MEASURE_TIME configuration option to profile the runtime of the postprocessing steps.
Start new documentation page for Performance/Profiling questions.
Migrate existing notes on multithreading to a new doc page, add more details.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@772 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-08 22:44:44 +00:00
aramis_acg d082330cea BLENDER: Fix potential stack overflow caused by a DOM object referencing itself.
Add general infrastructure to apply modifiers.
Implement mirror and subdivision modifiers using existing stuff.
Update BlenderDNA with related structures.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@763 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-07 14:50:19 +00:00
kimmi f017b5a4a4 - FEATURE : First version of PK3 format loader.
- FEATURE : First prototype of Quake 3 BSP format loader.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@755 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-06-18 17:36:46 +00:00
rave3d dc3218b08a adding some #ifndef SWIG for swig processing
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@743 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-27 18:30:28 +00:00
aramis_acg 32bfa9ac21 Add WIP version of the BLENDER importer. DO NOT USE FOR PRODUCTION YET!
Loads static meshes. Sometimes (it segfaults on the rest). No materials, cameras, fancy stuff. Works with all versions of blender. No compressed blend files yet.

- StreamReader now uses shared_ptr's to manage ownership of the stream.
- Adapt other loaders accordingly.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@717 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-10 10:22:24 +00:00
aramis_acg d86314d02e Fix missing throw() declaration to silence g++.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@667 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-11 02:29:46 +00:00
aramis_acg 875b7f9ca2 AllocateFromAssimpHeap: add overload for nothrow-new.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@666 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-11 02:14:52 +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 4c1b5a532d Add first WIP version of a TrueSpace loader. Currently only ASCII COB/SCNs are supported.
Add some fast_atof overloads to simplify calling it.
Add another convenience c'tor to aiColorMM.
Add COB test models.
Remove unreferenced member in B3D importer.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@633 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-02 04:17:05 +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 08ace2f27b - Fix Importer::FindLoader - it failed on file extensions with only one character (i.e. x). This fixes an unit test.
- Revert VTAdj code. It fails the unit test and the new facility (support arbitrary polygons instead of triangles only) is not used anywhere.
- Unit test suite passes now.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@592 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-11 16:47:36 +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
aramis_acg 707b06a7fe Add experimental MS3D loader, static meshes only at the moment.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@542 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-02-07 00:54:48 +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
jonathanklein 8cfb2e26cf - Ogre Importer Beta
- Ogre Importer Documentation
- Extended the general documentation at some points

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@476 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-09-05 12:04:32 +00:00
aramis_acg 8929ee3da5 Doc now includes parts of the internal API.
Documenting importer plugin development.
Cleaning up doxygen usage in the public API.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@473 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-08-31 15:51:54 +00:00
aramis_acg adb4ab602e Adding Importer::ReadFileFromMemory to make Chromanoid happy.
Updating unit test suite to verify the newly added stuff for correctness.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@444 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-06-21 19:44:48 +00:00
aramis_acg 1aa80ca8da Adding Importer::ApplyPostProcessing(), uncommenting RegisterPPStep() and UnregisterPPStep().
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@423 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-05-25 17:19:20 +00:00
aramis_acg afcfdf27ea Fixing crash at Importer::IsExtensionSupported().
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@411 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-27 19:58:34 +00:00
aramis_acg d7b4dd6ae3 Adding very basic reading support for CSM (CharacterStudio Motion). No proper hierarchy reconstruction yet, just plain marker import.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@408 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-26 15:09:03 +00:00
aramis_acg 9abcba4bc2 Integrating aiProcess_OptimizeGraph and aiProcess_OptimizeMeshes back into the Assimp core. They're stable enough now.
Moving private members of Assimp::Importer to a pimpl, hopefully solving strange crashes with vc9 debug builds.
Updating assimp_cmd to reflect these changes.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@403 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-24 20:53:24 +00:00
aramis_acg a3b32f306c Adding a file system filter layer to correct invalid paths automatically.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@381 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-10 21:59:22 +00:00
aramis_acg 48d768f15f LWO
- added workaround for LWOB's with ill-formed SURF chunks 
 - layer hierarchy is now correct
 - fixed & simplified transparency handling

FindDegenerates 
 - fixed seldom crashes with RemoveDegenerates=1. 


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@369 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-26 22:05:56 +00:00
aramis_acg c2d8881549 General
- changing Assimp's coordinate system from RH z-up to RH y-up
 - fixing coordinate system for LWO, 3DS, ASE, MD5, MDL, B3D, IRR, IRRMESH 
 - converttolh moved to three separate steps -> flipuv, flipwinding, makelh

LWO 
 - fixing texture coordinate generation -> mapping axis is correct now 
 - fixing z-fighting bug

ASE 
 - fixing crash due to invalid normal setup 
 - fixing parenting bug 
 - code cleanup

IRR 
 - code cleanup
 - fixing placement of externally loaded meshes 

MDL 
 - fixing texture coordinate space

PLY 
 - cleanup 
 - two-sided maat property is now set 

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@366 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-15 00:40:30 +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
aramis_acg eb761a875f Some minor changes in postprocess step order. My fault, I didn't think.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@328 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-02 20:37:35 +00:00
aramis_acg 4b4526953e Changed some runtime asserts to boost::static_asserts.
Added FindInstances postprocessing step. Not fully tested yet, but seems to work well. Enabled it for the viewer, too.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@327 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-02 20:29:27 +00:00
aramis_acg 03fcec7fe3 Removed direct STL dependency from the Assimp interface, should hopefully avoid problems with binary incompatible STLs. Some API changes, e.g. in the logger.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@321 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-23 21:06:43 +00:00
aramis_acg 462bb953c2 Removed OptimizeGraph step - actually it isn't really useful, although I got it working very well.
Updated credits.
VC9 workspace updated by hand (no vc9 ...) so be careful.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@300 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-15 21:08:28 +00:00
aramis_acg 58eb786d62 Major API cleanup. Unified formatting & doxygen tags in the public API.
Added factory provider for default log streams.
Added default log streams to std::out and std::cerr.
Updated VC8 project config, boost workarounds is now working for the viewer.
Updated unit test suite.
Fixed some minor issues in the postprocessing-framework.

BROKEN: DebugDLL build.




git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@292 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-12 22:06:54 +00:00
aramis_acg 39bfb7608b Optimized triangulation algorithm. Must more faster now.
Added loader for TERRAGEN terrains (*.ter).
ScenePreprocessor generates a default material if none is given.
AC: file extension bug
Added terragen test files.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@279 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-09 21:29:54 +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
aramis_acg d320a4bc64 Removed MDR loader - too unimportant and would need much more work to work properly.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@259 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-12-01 15:25:38 +00:00
aramis_acg 9fc698bb2f Fixed a bug in the validation step - animation channels weren't validated correctly in every case.
Further work on LWO materials, writes wrap amount to UV transform property now.
NFFLoader generates spherical UV coordinates now (for spheres and all platonic solids except hexahedrons)
Importer doesn't catch exceptions in debug builds.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@252 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-26 22:03:14 +00:00
aramis_acg 32342857d8 ASE and 3DS cleanup - face ordering improved.
Further work on target camera animation support in both loaders. Some general animation problems in both formats remaining, too. 
Added GenUVCoords and TransformUV-steps (see ML). The latter has been fully implemented, test file are there. GenUVCoords is a dummy for the moment.
Boost workaround for shared_array.
Further work on the documentation.
Updated material system (see ML).
Bug fixing in the AC loader, lights are now supported, too.


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@243 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-16 21:56:45 +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
aramis_acg 7c50899481 Fixed 3DS, ASE, MD3 and Q3D orientation after Schrompf' recent changes to the RH-LH conversion.
WIP version of animation support in the 3DS loader. Still hoping to find out why the pivots aren't handled correctly ...
Added first draft of a B3D loader provided by Mark Sibly.
Moved DeterminePType-Step to ScenePreprocessor.
Small LWO fix. Still texturing problems.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@231 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-04 20:41:11 +00:00
aramis_acg ac200212a9 Added ScenePreProcessor helper class to add missing dummy animation channels.
Modified FindInvalidData's behaviour regarding animation channels
Futher work on the IRR scene and IRRMESH loaders. Q3D fix. 
Updated aiNodeAnim documentation.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@218 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-02 16:58:31 +00:00
aramis_acg daae32d62f - Fixed a bug in FindInvalidData causing some animation channels to be lost
- Added Q3D loader. Seems to work quite well with Quick 3D 4.0
- Updated makefile, fixed GCC compilation error cause of packed matrix fields

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@214 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-01 15:14:00 +00:00
aramis_acg a7088d6263 Rewrote 3DS loader to support BE - added temporary light & camera & animation support. few models not working anymore, transformation bug still unsolved.
Fixed normal vector handling in the ASE loader. Improved animation & camera & light support - as for the 3DS Loader, still in the works.
Fixed AC - Loader. It is now able to load models with complex hierarchies correctly. Added a small workaround for Quick3D, which writes invalid AC files.
DXF-Loader skips {...} blocks produced by 3DS Max & AutoCad correctly now.
DefaultLogger doesn't repeat identical log messages now.
FindInvalidData-Process removes empty or dummy animation tracks now.
LWO-Loader recognizes complex shaders (such as Fresnel) correctly now. Other LLWO bugs still unsolved.
Fixed bugs in the Ply parser, causing non-triangular faces to crash.
Added some additional helperutilities to StreamReader.
Fixed a bug in ProcessHelper.h causing SPlitLargeMeses and SortBxPType to crash for meshes containing many bones.
Changed OB default material from black to gray.
Added additional test fils: ply (bugfix), ase (animation), QUick3D & Irr (in the works), STL (export from 3DS Max)

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@210 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-31 19:32:00 +00:00
aramis_acg 3d3b9719f8 Fixed third-person camera movement bug in the viewer.
Fixed a bug that caused the viewer to render "random" polygons in some special cases. 
ASE: Added parsing support for *GROUP nodes. Improved light & camera handling (still WIP). Fixed a bug that was caused by a recent change. Improved logging.
Updated PretransformVertices. The step works now (and supports line and point meshes). Important: The position of the step in the pipeline has changed. No unit test yet.
Minor fixes to SortByPType. Added a config option that allows users to specify which primitive types they don't need. 
Added WIP version of an Irrlicht Scene Loader (.irr).
Added a small helper class ("BatchLoader") to make it easy for loaders to load subsequent meshes from external files (needed for irr and lws).
Added test models for IRR. Added dwarf.x from the Irrlicht repository (readme included) to the test X files.
[Current TODO: Fix bugs in: AC, 3DS, LWO. Finish MDR and OG. Implement: IRR, LWS. Write some more ut's ... ]

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@197 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-27 00:36:26 +00:00
aramis_acg ce6ce098e9 Removed aiProcess_FindDegenerates from the viewer. The step seems to cause some problems that have not yet been solved.
Added irrmesh (Irrlicht Mesh Format) loader to Assimp. Works quite stable, but no lightmapping support yet.
Removed tinyxml, replaced it with irrxml instead. Added an IOStreamToIrrXML wrapper.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@194 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-24 20:37:54 +00:00
aramis_acg 383a614931 Fixed some minor issues in the AC loader. However, it still crashes with large and complicated models. Line handling is complete.
Moved the code to find degenerated primitives to a separate step that is not anymore active by default. 
The FindInvalidData-Step isn't active by default now. It hast a flag and must be explicitly requested.
Added line and point handling code to the CalcTangentsStep - not yet tested.
Added support for the Sense 8 (WorldToolKit) NFF file format. The format uses the same file extension as the "Neutral File Format" (and is implemented in the same loader). Seems to work well, added test files for it.
Added itoa10 function - so we have itoa on all platforms.
Small optimizations in the SortByPType step.
Fixed the material validation: textured meshes without uv coords cause a warning now.
Fixed a minor isses with the OFF loader.
Added empty unit tests for the new steps - to be filled in the next days. 
Added SceneCombiner.cpp. It contains utilities to join meshes and scenes. The latter will be needed by the LWS loader (LWS files contain references to external LWO files and the LWO loader is already to complicated that it would make sense to add an additional code path to it). Mesh joining is needed by some pp steps, but the code has not yet been moved to its new location.
Added WIP light & camera support to the ASE loader. Works for the moment, but there's much missing. ASE parser refactored, the code is still quite long but at least cleaner. Fixed a bug that caused ASE to import invalid texture coordinates.
Makefiles and VC8 solution are up-to-date. The rest isn't.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@192 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-22 20:06:16 +00:00
alil c0148c090f fixed some linux issues
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@186 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-19 19:51:24 +00:00
aramis_acg 2da2835b29 Fixed bug in the AC loader causing lines to load incorrectly. Seems to work now.
Added some more essential includes to AssimpPCH.hAdded support for line and point meshes to most steps - I did nto yet adapt all unit tests, so meshes with mixed primitive types are not absolutely safe at the moment.
Added camera and light support to the PretransformVert step. Fixed some small inaccuracies and fixed a bug reported by Mark Sibly causing all transformations to be invalid. However the step is nto yet completely correct, there are still some small artifacts.
Updated light and camera data structures, added temporary validation code for the
Renamed AI_SCENE_FLAGS_ANIM_SKELETON_ONLY to a more generic AI_SCENE_FLAGS_INCOMPLETE flag.
Fixed bug in the OFF loader causing meshes with polygons to crash
Added line support to the DXF loader - seems to fail for the moment cause of SortByPType.
Added support for lights and cameras to NFF, implemented another NFF format subtype (file starts with 'nff'). Implemented NFF 'tpp' chunk and a corresponding texture extension.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@185 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-19 11:32:33 +00:00
ulfjorensen c128705de9 - beginning of BVH loader, to continue working at home. Not usable, yet.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@177 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-15 16:12:18 +00:00
aramis_acg 1db46c242f Added temporary boost workaround - some assimp features work with reduced functionality in this case.
Added AC-loader, WIP version.
PLY loader is now able to load models from blender, test model added. Refactoring.
Added FindInvalidData step.
Added support for precompiled headers, the release builds in VC8 are configued to use PCH now.
Added separate makefile for mingw, no -FPic warning anymore, -clear works now.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@176 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-13 16:45:48 +00:00
aramis_acg 9eee308c4a Changed "KillNormals"-Step to "RemoveVertexComponentXYZ". See ML for more details on this.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@168 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-02 15:22:38 +00:00
aramis_acg 927cd1cd46 Added support for point and line primitives.
Added SortByPType and DeterminePType (anon.) steps
Optimized ASE, fixed 3DS.
Rewrite all loaders to conform to the api changes.
Optimized normal computation code in LWOLoader.cpp
Added new unit tests
Added test file for AC3D (good old wuson again)
 

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@167 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-30 20:20:56 +00:00
ulfjorensen 8925813026 - renamed "bone" anims and associated structures to generic "node" anims. Breaking change, sorry for that.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@166 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-30 13:05:48 +00:00
aramis_acg 9279513700 Optimized GenVertexNormal-Step.
Added SharedPostProcessInfo-class to allow pp-steps to interact with each other.
Used this new feature for some cross-optimization between the steps: SpatialSort is now solely computed once, not up to three times.
3DS bugfix - orientation was wrong.
ASE normal vectors - although they are normally wrong and not orthonormal they are working now.
Fix in fast_atof.h - 1.45E45 (major 'E') is handlded correctly now.
Improvements on jAssimp, still WIP and not working.
Some LightWave bugfixes, still WIP.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@164 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-27 16:46:05 +00:00
aramis_acg 7f9c3652b3 Added RAW Loader. Tested with various configurations, seems to work.
Added OFF Loader. Tested with various configurations, seems to work.
Added POLYLINE support to the DXF Loader.
Added WIP version of the MDR loader - disabled and not yet working.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@145 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-16 16:17:32 +00:00
aramis_acg f69446937b Added NFF loader. No standard shapes yet (sphere, cone), but a class for them (StandardShapes) has been declared.
Fixed a small bug in the DXF loader, a few test models, however, are still corrupted.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@121 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-07 16:51:05 +00:00
aramis_acg 56563016b0 Added DXF implementation. No support for polymeshes yes, just 3DFACE elements are implemented.
Added strtol64s function, refactored SMDLoader.cpp to use it.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@120 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-05 13:21:01 +00:00
aramis_acg 38d04b6796 MD5 bugfix.
WIP version of the OptimizeGraph-Step.
Added hashes to some string routines (speedup).
Improved property system for float and strings.
Refactoring code for computing normals from smoothinggroups.
Implemented C-ASSIMP.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@116 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-28 17:35:36 +00:00
aramis_acg f13edd8acf Fixes from Andrew Galante for build with gcc4. LWOB materials finished, some research for LWO2. Unit tests are working again. Added makefile and project workspace for xcode3 (from Andrew, too).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@110 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-13 23:46:46 +00:00
aramis_acg 0b1e8fefa5 Fixed log formatting in DefaultLogger.cpp to work with AssimpView.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@107 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-11 20:57:18 +00:00
aramis_acg cefecc1fe7 Added Importer::RegisterLoader() and Importer::UnregisterLoader().
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@105 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-11 17:49:02 +00:00
aramis_acg 6f49c4518c Added first working version of a MDC loader; no further features like compressed frames tested at the moment. Added config options for keyframe loading, this has been tested with MDL7 only (atm). Some refactoring, a few files are much cleaner and smaller now. RemoveRedundantMats step does now remove unreferenced materials.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@103 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-09 22:39:57 +00:00
aramis_acg 6fe8c867e8 Refactoring ... added documentation, simplified some parts of the code and migrated some class declarations in separate files.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@100 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-08 18:34:14 +00:00
aramis_acg 30ecc82181 Integration of config interface patch is nearly complete; Importer::GetMemoryRequirements() patch is in the repos.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@92 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-08 11:59:09 +00:00
aramis_acg 8844380f34 Added config interface
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@91 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-08 11:53:48 +00:00
aramis_acg 42ef23e745 WIP version of a LWO file loader. Not working yet.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@82 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-07 22:27:17 +00:00
aramis_acg 2f36cc5f5f Added MD5 (md5mesh works, md5anim has not yet been tested) and STL. new unittests, although not yet complete (material system, normals). Bugfixes (GFn and MDL7). Added HMP5 support. Rewrote MD2 and MD3 to be more stable.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@77 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-06 23:01:38 +00:00
aramis_acg 8aa56a62c2 Bufixes to the ASE loader, added "RemoveRedundantMaterials"-Step. Rewrite debug output.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@74 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-07-30 23:00:25 +00:00
aramis_acg e8511e89ff Added "ImproveCacheLocality"-Step; Added Unit tests (3 at the moment); Fixed hp spelling errors.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@68 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-07-22 22:52:16 +00:00
aramis_acg b422d4e303 Finished loading of MD2, MD3, MDL2, MDL3, MDL4, MDL5, MDL7, MDL. First WIP version of the SMD loader. Additionals checks added to the validation step.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@60 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-06-22 10:09:26 +00:00
aramis_acg 758e092449 Added validation step, added helper macro AI_BUILD_KEY to the material system.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@59 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-06-15 10:27:08 +00:00
ulfjorensen 492aa8358b - added a post processing step to limit the bone count per vertex
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@56 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-06-07 23:21:36 +00:00
aramis_acg 69ed883ae0 ase/ask loader is quite stable now, loads most models correctly
added pretransformvertices postprocess step
bugfixes in the 3ds material system. transparency is now displayed correctly
Node view in the viewer display the local transformation matrix now
Fixed wrong directory name. "unused" renamed to "extra"
---> all is WIP ...


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@50 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-05-30 23:01:25 +00:00
aramis_acg 70f155e515 MakeVerbose moved to subdirectory
pp step c'tors are protected now
viewer changes
JNI additions - JNI BUILD CURRENTLY NOT WORKING

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@43 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-05-26 21:28:19 +00:00