Commit Graph

179 Commits (24a0132598d9d6bf496aca2d3762bdd1f9896278)

Author SHA1 Message Date
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
aramis_acg df9f4130eb Further work on the IRR and IRRMESH loaders. IRR is still WIP, IRRMESH loads lightmaps correctly now.
Added lightmap viewing support to the viewer. Irrlicht's tone scaling is hardcoded for the moment, a proper implementation will follow with the new viewer.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@232 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-05 12:26:11 +00:00
ulfjorensen 195d9a9cb1 - Bugfix: XFileLoader does not generate dummy bone arrays anymore. Had screwed HasBones()-Test in the viewer, making bone-less objects vanish from view
- made HasFooBar()-checks more precise on the way
- cleared up everyone's destructors to also delete arrays if the corresponding mNumFoo member was zero. This hopefully does not break all too much
- Bugfix: meshes without bones now properly show up with DisableMaterials enabled

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@230 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-04 17:21:08 +00:00
aramis_acg 240dbfd864 Small fix to the ASE loader - workaround for bitmaps with filename "None".
Further work on the IRR loader. Still work in progress.
Fixed a minor issue in StandardShapes.
Fixed a bug in the Q3D loader causing models without textures to load incorrectly.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@225 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-02 22:30:37 +00:00
alil df85f0aead added some stuff to reduce compiler warnings of unused vars
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@224 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-02 22:22:13 +00:00
ulfjorensen d965f0d06a - Viewer: additional bugfixes while trying to get the animations to work
- added anim interpolation for anim playback
- Bugfix: FindInvalidDataProcess was still mixed up a bit

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@219 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-02 17:20:29 +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
ulfjorensen c7e6fe3d73 - Bugfix: animation scene tree is correctly created and traversed now
- Bugfix: viewer should not crash anymore when loading a second asset after a first asset with bones
- deactived invalid animation filtering for the moment


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@213 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-11-01 14:18:13 +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
alil cfeb8b2b2a added include <map> as the std::map is needed in this file
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@205 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-29 22:29:07 +00:00
ulfjorensen 730b77c68e - removed implementation headers from the public interface
- corrected a few places that did not include those headers by other means
- Bugfix: SkeletonMeshBuilder should now finally work correctly when skipping invalid node connections

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@203 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-29 22:02:00 +00:00
aramis_acg e9dc280739 Fixed linker error reported by PuMI causing the DLL build to fail.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@200 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-28 12:05:11 +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
ulfjorensen a62b94079f - Removed Boost_MultiArray-Remake
- Fixed rotation matrix to quaternion conversion, hopefully final this time.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@196 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-26 18:58:34 +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
ulfjorensen 8271164d74 - Further work at the BVH loader. Still work in progress.
- Added a helper class to build a mesh for a meshless node hierarchy

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@189 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-19 21:44:12 +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
aramis_acg 75d212c793 Added a first draft of the aiCamera documentation.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@180 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-17 15:39:11 +00:00
aramis_acg 2d8421ed98 Added modified aiLight data structure
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@179 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-10-17 14:43:53 +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 3e46a0860e Added vertex color support to the DXF loader, fixed a minor bugs. Coordinate system issue still unsolved.
Modified GenVertexNormals to take always the cross product of the first and the last normal of a face as face normal.
Material implementation for LWO - seems to work, but there are some issues with highly complex models.
Added some LWO test models
Cleaned up the ./test dir - converted some BMPs to JPG to save space,
Finished the matrial property list in jAssimp, some other changes, too. The Java part of the API should be working now.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@156 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-20 15:55:51 +00:00
aramis_acg 7d21c02e28 ASSIMP Beta 1, final fixes for the release.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@141 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-13 22:31:15 +00:00
aramis_acg 8991496cf5 Fixes for build with mingw (no warnings in 32 Bit build, even with -wall).
SMD bugfix.
Makefile is up to date now.
Added pack-attribute for aiVector3D and aiVector2D. 

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@132 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-12 20:25:11 +00:00
aramis_acg 559daf900d NFF finished except cone implementation.
Added fixes by lynxeye to make assimp work with GCC 4.
Website - again a backup of the current version.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@130 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-11 20:50:15 +00:00
aramis_acg 96f2b0b536 Removed AI_C_THREADSAFE flag - there are unknown compiler errors in the x64 build.
Removed config options for LWO, code cleanup; still WIP
Added a few StandardShapes implementations.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@126 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-09-10 14:39:35 +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 ad4cc033d8 GenVertexNormal bugfix. Angle limit wasn't correct.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@119 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-28 23:49:20 +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
kimmi 51bfc46c1d Fix linux build
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@115 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-17 15:04:10 +00:00
aramis_acg b2a1268711 STL bugfix. LWO2 next WIP version, deactivated for the moment (as I'm away for a week. LWOB (LightWave 1-4) remains activated).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@113 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-15 23:23:28 +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 0148d06678 LWOB loader nearly finished, LWO2 is WIP (many hours with the hex editor to come ...). Added test models for LWOB. Cleaned up the 3DS loader, overloaded ASSIMP_stricmp for std::string.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@109 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-13 15:45:57 +00:00
kimmi b5c54703d0 Add ThreadID to default log stream output.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@106 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-11 19:17:33 +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 4e59426e09 Added pushpack1.h and poppack1.h, integrated "FixInfacingNormals"-Step. Removed MD4 loader, MD4FileData.h remains in the extra directory. Renamed "VisualStudio" directory to "MSVC".
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@93 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-08 15:18:28 +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 3720faf771 Added config interface.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@90 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-08 11:51:00 +00:00
aramis_acg 1d57539d20 Added definitions for Importer::GetMemoryRequirements
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@89 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-08 11:48:50 +00:00
aramis_acg 11f630e209 Moved NULLLogger class declaration to a separate header
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@81 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2008-08-07 20:57:54 +00:00