Commit Graph

224 Commits (eb3fd360f416535180ab9a468a3eb7c389ae9d60)

Author SHA1 Message Date
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
aramis_acg 6f1408a7f0 - update CHANGES.current.
- mark aiAnimMesh data structures as *NOT CURRENTLY USED*. They are, however, still contained and visible because some ports may be relying on their presence.
- add SimpleAssimpViewX sample provided by drparallax. Thanks! (http://sourceforge.net/projects/assimp/forums/forum/817654/topic/3917829)


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@843 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-21 14:57:00 +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 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 e5aad11944 Introduce limits for vertices, faces (per mesh), face indices (per face) and weights (per bone).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@783 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-16 11:44:31 +00:00
aramis_acg 9e8a9586b3 Add defines to easily detect the current target architecture.
Supplement missing compile switches for recent feature additions.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@779 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-11 00:38:14 +00:00
aramis_acg 7f958444e2 Add defines to easily detect the current target architecture.
Supplement missing compile switches for recent feature additions.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@778 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-11 00:37:34 +00:00
aramis_acg 6d8ea48ed4 Add SetPropertyBool() and GetPropertyBool() convenience functions.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@777 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-10 10:53:39 +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
klickverbot af3c5a8404 Added a mNumVertices property to aiAnimMesh as discussed with Alex on ICQ.
It is intended to make the length of the arrays in aiAnimMesh accessible even if the associated aiMesh is not known, e.g. in language bindings. Once the data structure is actually used inside Assimp, it could be set for all aiAnimMeshes from aiMesh::NumVertices in the Assimp::Importer after everything else has been completed.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@768 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-07-07 22:01:29 +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
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 255082c39b Add data structures for vertex animation. Basing on recent ML discussion.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@720 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-10 18:05:52 +00:00
aramis_acg 261f49c468 Add mName member to aiMesh.
JoinVerticesProcess and SortByPType copy the mesh name to all clone or sub meshes they create.
JoinVerticesProcess' verbose output now prints mesh name, no longer using sprintf (TinyFormatter's age has come).

WARN: This is a public API change (not a breaking one, however).

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@719 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-05-10 13:59:29 +00:00
aramis_acg 685d2b83c5 Fix error in aiString documentation. MAXLEN includes the terminal NULL. This is unusual, but true.
Fix overflow vulnerability in SceneCombiner. Thanks to Krishty to point it out.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@683 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-14 21:45:00 +00:00
aramis_acg e4285a5b38 Clarify docs on qnans in aiMesh vertex data arrays.
Complete format list, rebuild doc.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@681 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-14 21:13:58 +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 bcf0ddc086 - don't delete the null logger.
- don't leak LogStreamInfo when detaching streams from DefaultLogger.
- detach the stream before deleting it in aiDetachAllLogStreams.
Thanks to Bart Botta for the patch.

- DefaultLogger does not properly delete log streams if they're still attached to it when the logger is destroyed. This is the behaviour specified in the documentation.
- Adapt AssimpView's logger usage, which didn't follow the spec as well.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@659 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-04-10 15:00:36 +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
jonathanklein fb666493ad - small documentation improvements
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@620 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-19 20:26:43 +00:00
aramis_acg 28d4287934 Add preliminary animation support to MS3D. Very much WIP. Animations involving translation keys only are fine, rotations are messed up.
Fix problem related to floating-point inaccuracy in ValidateDS.
aiMatrix4x4::FromEulerAngleXYZ returns itself now, so chaining is possible.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@613 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-16 21:58:10 +00:00
aramis_acg 4f6d81a29b - Clarify documentation for Importer::GetOrphanedScene.
- Change doc revision to 590.
- Rebuild CHM doc (online docs updated as well).
- Add TBD entry to LWO loader to remind me if I find enough time to fix that.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@591 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-08 20:21:30 +00:00
ulfjorensen 2acde008a9 - fixed docs concerning Importer::ReadFile() after a hint in the forum.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@588 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-06 10:31:37 +00:00
klickverbot de9b7a52f9 Added missing files to the XCode project; define AI_BUILD_BIG_ENDIAN when compiling for Apple/PowerPC.
Again, thanks to Dario Accornero for the patch!

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@587 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-05 18:02:36 +00:00
klickverbot ac8479f542 Moved private headers to code/ as discussed; removed boost::random workaround which was no longer needed; CMake cleanup part two (Boost detection, …).
Please be quick to suspect this commit if the build should break on Windows/MSVC.

(Again, sorry for the large commit, but I didnt want to flood the commit log with my git-style tiny commits.)

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@577 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-03-03 21:48:23 +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
rave3d 52228add3a add some #ifdefs for SWIG
fixed a compile error in DefaultIOSystem
add swig-script


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@546 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-02-15 18:28:32 +00:00
aramis_acg 5355156b43 FIX: aiGetMaterialProperty is now exported properly
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@543 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-02-14 13:26:48 +00:00
aramis_acg 1fd3cfd311 MSVC: Add noreturn attribute to aiAssert and ValidateDSProcess::ReportError. This reduces warnings in VS2010's static code analysis tool. Thanks to Chris Maiwald for the patch.
Correct include order in assimp_view.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@539 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-02-05 22:32:19 +00:00
aramis_acg 2e3fee99f0 ADD Vertex utility class to simplify conversion from and to interleaved vertices.
Refactor JoinVerticesProcess to utilize the new utility.
ADD basic operators for aiColor4D, move to dedicated header and implementation file.
ADD some utility functions to SpatialSort.
ADD my existing Catmull-Clark implementation to Assimp for all model formats with support for subdivision surfaces. Slightly WIP, likely to produce errors on non-closed meshes. Currently only implemented in the AC3D loader.
Switch to byteswap intrinsics instead of inline assembly (bswap). Currently MSVC only.
FIX phong shading in assimp_view.
VertexTriangleAdjacency class now also works on arbitrary polygons - UNTESTED, tbd.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@532 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-01-28 21:17:25 +00:00
aramis_acg c999f65a7d FIX: SMDLoader was broken due to erroneous 'rt' in input stream construction.
FIX: MD3Loader, revive dead branch.
FIX: TargetAnimation - clarify doc on preconditions. 
FIX: aiMatrix3x3::FromTo - move cross product into a branch to save it we can do it without it.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@530 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-01-19 20:05:14 +00:00
ulfjorensen 185c30c85b Bugfix: moved ai_assert condition evaluation out of the assert function to avoid constructing two expensive strings on every single call.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@525 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-01-06 22:04:31 +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 35cfb90e6f BREAKING CHANGE: aiQuaternion + / aiQuaternion to aiMatrix conversion does now conform to the 'usual' quaternion conventions. See the discussion at https://sourceforge.net/projects/assimp/forums/forum/817653/topic/3442128 for all the details.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@502 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-11-19 23:22:53 +00:00
aramis_acg c6899cd999 FIX: Adding empty final line to some units where it was missing.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@495 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-10-11 13:57:55 +00:00
aramis_acg cc1ff304df FEATURE: Adding format auto-detection to OBJ loader basing on some distinct keywords.
FEATURE: PretransformVertices step is now optionally able to normalize meshes (-1...1 range).

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@488 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-09-30 17:55:21 +00:00
aramis_acg c89107a117 FEATURE: FindInvalidData step now provides a configuration option to fine-tune the accuracy of floating-point comparisons.
Ogre-Importer now compiles with -noboost.
Fixing GCC complaints about inproper 'address of temporary' in Ogre-Importer.


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@480 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-09-21 17:41:57 +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 3435623463 Fixing template instancing failure in aiMaterial::Get().
Providing explicit specialization for aiColor3D.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@470 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-08-23 15:46:04 +00:00
aramis_acg a251827cb9 Adding support for Unicode input files to most text file loaders (BVH and MD5 missing for now).
IrrXML receives memmapped UTF-8 input data now, it's own (faulty) conversion is not used anymore.
aiString's are explicitly UTF-8 now.
Slight refactorings and improvements.
Adding UTF-8/UTF-16 text files for ASE,obj,collada,ac3d. These contain various japanese/chinese character sequences.
Changing assimp_view's node view to display UTF-8 multibyte sequences correctly.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@469 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-08-21 22:49:58 +00:00
aramis_acg 3b95a1e782 Adding aiMaterial::GetTextureCount()/aiMaterialGetTextureCount().
'Removing' some MSVC compile warnings from B3D.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@468 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-08-21 11:26:54 +00:00
klickverbot 0bf34ced10 A couple of small documentation fixes (spelling, missing characters, …).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@456 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-07-31 22:34:21 +00:00
aramis_acg 6674f1587d Updating code sample for aiGetPredefinedLogStream.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@450 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-07-23 20:16:05 +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 cc96f55c61 Adding samples/SimpleOpenGL.
Adding basic math functions to the C API. This functionality is exposed to C++ users via operator overloading of aiMatrix4x4, aiMatrix3x3, aiVector3D.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@442 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-06-20 14:49:49 +00:00
aramis_acg d881a16402 Logging functions are now available to C-Users, too. Cleaning up headers.
Changing spelling of some enums to camel.
Ply loader loads tristrips correctly now.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@425 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-05-28 11:32:54 +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 25088fd7da FIX: IrrMesh lightmap scale factor is imported correctly now.
FIX: aiProcess_TransformUVCoords tried to transform untransformed channels, and 'he' changed their order from time to time.
FIX: Viewer displays lightmap with scaling factor correctly now.
Further work on documentation, material doc is WIP for the moment.
Some improvements to fast_atof.
Updating makeifle.mingw to reflect my new boost location (arg, too lazy to make it better ...). 

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@413 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-05-03 21:49:34 +00:00
sueastside b2ffa9dd1b Added ASSIMP_API to aiCreateQuaternionFromMatrix and aiDecomposeMatrix.
Added aiDecomposeMatrix to PyAssimp.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@410 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-27 15:43:01 +00:00
aramis_acg e4cddb9e9d Adding aiCreateQuaternionFromMatrix() and aiDecomposeMatrix() to expose some cpp maths functionality for c.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@409 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-27 15:16:32 +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 760bcbbf69 Updating PyAssimp to the latest data structures. Many thanks to sueastside for the patch.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@402 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-23 20:58:16 +00:00
aramis_acg fcc6455447 Removing stdint.h dependency from the public API to avoid conflicts with other libraries.
Cleaned up aiTexture.h, AssimpPCH.h and MaterialSystem.h.
Updated child apps & makefiles to reflect these changes.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@385 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-04-11 14:31:57 +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 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
aramis_acg 93ab7383da General
- cleaned up doc, made section on face winding clearer 

MD3 
 - fixed coordinate system 
 - changed default face order for .shader files 

MD2 
 - fixed coordinate system 
 - fixed face order 



git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@367 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-18 22:01:11 +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 7080ba231c General
- added Conjugate() and Rotate() to aiQuaternion
 - SkeletonMeshBuilder can now start hierarchy construction at a given node
 
MD5
 - MD5MESH and MD5 anim now working.
 - MD5ANIM files can be loaded without corresponding MD5MESHES
 - Config option to prevent automatic loading of MD5ANIMs 
 - WIP version of MD5CAMERA support.
 - added test files. No anim test file yet.

BHV
 - fixing formatting 

LimitBoneWeights
 - prints now statistics to the logging system 

Viewer
 - does now specify the LBW post-processing step.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@359 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-08 15:29:34 +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 caaf02b0e4 BUGFIX: invalid explicit qualification of aiMatrix3x3
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@355 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-05 18:03:00 +00:00
ulfjorensen 5c0a259a63 - added proper inversion of 3x3 matrices
- Bugfix: aiMatrix4x4::IsIdentity() had a classical Copy&Paste error. Thanks to Michael Schifferling for pointing it out.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@354 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-03-05 14:27:06 +00:00
aramis_acg abe2d4834e MD3
- shaders are now processed
 - multi-part player models are handled correctly

Material system
 - added flags for 'usealpha' or 'ignorealpha' setting of textures

LWO
 - fixed texture assignment bug due to invalid tag list

3DS
 - improved handling of dummy nodes

Viewer:
 - lines&points are now displayed
 - improved animation control via slider (still some stuff missing)
 - skeleton is now displayed
 - some other minor fixes

Validator:
 - some material issues are warnings now (no errors anymore)

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@349 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-15 20:29:07 +00:00
aramis_acg 2b9461fbf7 MD3
- finished support for multi-part player models
 - skin files are now read 
 - shaders are parsed, but not yet processed yet

DefaultIOSystem
 - file size is now cached over multiple calls to FileSize()

MaterialSystem
 - added AI_MATKEY_BLEND_FUNC property and the aiBlendMode enum to allow MD3 and Collada to pass transparency information correctly.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@346 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-13 22:03:57 +00:00
aramis_acg d70c092b71 MD3
- rough support for multi-part player models.

SceneCombiner
 - added support for cross-attachments of nodes in the whole graph

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@345 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-12 22:14:35 +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 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 8148ff36c0 Minor doc fixes.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@335 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-07 11:23:22 +00:00
aramis_acg 9fe1652c2b Cleaned up public headers.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@334 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-06 22:43:08 +00:00
aramis_acg 4048eb92f5 Fixed illumination model conversion in the OBJ loader.
Added map_d support to obj.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@332 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-05 18:13:34 +00:00
aramis_acg ec9226c5b9 Fixed nasty bug in FindInstancesProcess.cpp.
Added a small epsilon to some functions in the API.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@331 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-02-05 16:16:04 +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 366989769f Fixed camera doc.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@315 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-21 13:26:17 +00:00
aramis_acg 4727ad6c6a Fixed HMP typo.
Further work on 3DS target animations.
FixNormals-Step inverts face order now.
Further work on the doc to aiCamera.h, added helper function to get a view matrix.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@312 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-20 21:41:17 +00:00
aramis_acg 3d5eae6be5 Moved some defines into the core, away from the public stuff.
Fixed build error regarding zutil.c with vc9.
Updated VC9 project files (again ...)
Moved version getters to aiVersion.h.
Deleted redundant fast_atof.h from irrXML.
Added vc9 config for cppunit
Fixed a missing include when building against stlport

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@307 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-19 19:34:34 +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
aramis_acg 8dccb31e6e Fixed issues with gcc 4.3.2 - semicolon after namespace closing brace not accepted. Thanks to klickverbot to point it out.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@303 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-18 02:18:56 +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 0f5c1cf3ba Patch [ 2508517 ]: Doc fixes II by Any Maloney
Fixed a compiler warning: 'dangerous use of <<, check operator order'. Operator order was right, added the braces, though.




git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@298 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-15 17:15:05 +00:00
aramis_acg d416a5d7b6 [ 2503202 ] Doc fixes. Thanks to Andy Maloney for the patch!
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@294 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-13 18:58:07 +00:00
aramis_acg 607356a844 Added empty end lines to all workaround files.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@293 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-12 22:26:11 +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 6c69ebee4f Fixed texture paths in some NFF files.
Cleaned up Assimp C-API calls in the viewer.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@284 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-11 15:20:06 +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
aramis_acg b36c7ba6ca Added workaround for boost::tuple.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@272 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-08 04:25:35 +00:00
aramis_acg 1ded2f6a34 FIX: (aiMesh::mNumTextureCoords[n] == 0) is now propagated to 2.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@266 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2009-01-06 17:24:47 +00:00
aramis_acg 321334fd12 [ 2373610 ] Patch for Linux and SCons. Added patch provided by John Connors, closed the corresponding tracker item.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@262 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-12-07 20:00:58 +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 9b53b2aa1a FIX: 3DS loader skips TCB keys correctly now.
Further work on 3DS light and camera support + target animation.
Removed obsolete files & directories.
AssimpPCH.h outputs the current build config now (MSVC only)
Simplified foreach workaround
Fixed compilation error in the DLL build

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@258 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-30 22:27:20 +00:00
aramis_acg 80da4a4093 Fixed missing #include <vector> in assimp.hpp. Thanks to Andy Maloney for the hint.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@256 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-29 16:32:34 +00:00
aramis_acg 94d289d1a3 Updated boost workaround. Added -noboost build config to VC8.
Added aiGetVersionMinor, aiGetVersionMajor, aiGetRevision and aiGetLegalInformation(). They allow to query the library version at runtime.
Added reference images for cylindric and spherical mapping.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@255 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-29 15:30:50 +00:00
aramis_acg be864ce4a0 Added support for cones and cylinders to NFF (the code to generate these primitives is hosted in StandardShapes.cpp).
Fixed some minor material bugs in NFF.
Added some more test NFF files, refactored and commented the old ones.
Added FromToMatrix function to aiMatrix4x4
Temporarily disabled animation support in SMD and fixed some minor bugs. Static models should load correctly in every case.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@254 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-28 23:02:27 +00:00
aramis_acg fd9e6edc19 Further work on the IRR, AC, LWS loaders. Further work on the - still unfinished - OptimizeGraph step. SceneCombiner works now properly in all cases I tested yet.
Added missing 'typename' in Colladaparser.h
First implementation of spherical and cylindrical mapping, already in use for IRR and LWO models. For the latter the coordinate system is not yet correct.
Moved vec2d to a separate header and added operators similar to vec3.
Added plane and ray helper classes. Just the data is wrapped, no operators required for the moment.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@249 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-26 13:17:39 +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
aramis_acg 68ef00ef09 Fixed a bug in the SortByPType-step causing some models with bones to crash
Fixed a bug in PretransformVertices - vertex colors caused an infinite loop sometimes.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@241 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-16 14:39:54 +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 f7aa836330 ASE: Added WIP support for *SMOOTHSKINMESH elements in ASE/ASC files. Fixes in the ASE loader. Fixed animation parsing. Temporary implementation of target lights and cameras, including animations.
3DS: Fixed transformation problems (Pivot points), added WIP animation support. No target animation yet (cameras, spot lights). Not yet fully tested, but static models that worked before should still work now, except all look correct now :-) (some problems with very large models remaining)
Further work on the IRR and IRRMESH loaders. IRR still WIP, IRRMESH more stable now.
Work on the LWo loader. Added support for the "one-layer-only" mode. Hierarchy bug still unfixed, UV coords bug still unfixed.
Further work on the FindInvalidDataprocess. Improved validation for normals, no false positives anymore.
Further work on the MDR loader, still WIP.
Moved DeterminePType-Step to ScenePreprocessor.
aiAnimation::mDuration is optional now, ScenePreprocessor computes it automatically if set to -1.
Fixes in the SMD loader. Still crashes on some files.
Updated animation documentation.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@236 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-09 23:17:19 +00:00