Commit Graph

558 Commits (0c8f57422998d6c931574b45fb014e0b8212083c)

Author SHA1 Message Date
Turo Lamminen 0b0ba2ec4d Refactor logic which checks for too large allocations
It's now easier to change the limit
2015-08-14 11:53:16 +03:00
Kim Kulling 524834c307 Fix line endings. 2015-08-08 18:02:37 +02:00
Richard e4b0c27a2e Refactor: Strip trailing whitespace 2015-06-28 16:09:18 -06:00
Richard 54a2d0808c Refactor: Expand tabs to 4 spaces 2015-06-28 16:08:06 -06:00
Richard 6da45599c0 Refactor: Strip trailing whitespace 2015-06-28 16:08:06 -06:00
Richard 5dbd676c01 Refactor: Use LF line endings 2015-06-28 16:08:06 -06:00
Richard 9d736cc1c5 Implemented: Add editor config file 2015-06-28 16:04:15 -06:00
Kim Kulling 2bfc353fde License info: update year info. 2015-06-28 21:48:25 +02:00
Jaime Machado Neto de6f0f2a7d Creating the functionality to list all Importer descriptions and the number of importers available. 2015-05-26 08:40:43 -03:00
Andy Maloney 4cbce374b6 Code Cleanups
- add initializers to classes
- fix %i/%u for unsigned ints
- remove unused vars
- pass by reference
2015-05-24 11:55:37 -04:00
wise86Android 2c194f629a fix macro for be uesed with expression 2015-05-19 21:57:51 +02:00
Léo Terziman ca2e47b205 Fixed some typos 2015-04-29 09:26:11 +02:00
Léo Terziman 5b9af11f9b Merge remote-tracking branch 'official/master' into contrib 2015-04-28 12:04:53 +02:00
abma 8c45a4dc3b Merge remote-tracking branch 'origin'
Conflicts:
	code/C4DImporter.cpp
	code/OgreImporter.h
2015-04-16 01:03:00 +02:00
abma bf4913b5c9 remove AssimpPCH.h: fixes #534 2015-04-16 01:00:17 +02:00
abma 470ad98281 fix "headercheck":
part of https://github.com/assimp/assimp/issues/534
2015-04-15 21:22:26 +02:00
Léo Terziman 454b85a0ad Improved prototype of Importer & Exporter SetProperty* functions for better integration with tools such as SWIG 2015-03-27 10:56:03 +01:00
Léo Terziman 60d58901a5 Merge remote-tracking branch 'official/master' into contrib
Conflicts:
	code/ColladaParser.cpp
	include/assimp/config.h
2015-03-27 09:55:21 +01:00
Ser Lev Arris a7e4babd9d gcc_struct, old fish, but reinterpreted: 92f4c84488 2015-03-21 11:10:33 +01:00
Madrich 56da80bc6e Copy constructor ExportProperties
Fix name dummy node in PreTransformVertices
2015-03-14 19:03:44 +01:00
Madrich 290a16eea5 Copy constructor for ExportProperties
Export Propertie defines in config.h
Remove unnecessary
2015-03-14 16:31:33 +01:00
Madrich 37572f0f52 Missing include map 2015-03-14 14:22:55 +01:00
Madrich 8b1b12682f Add ExportProperties 2015-03-14 14:03:14 +01:00
Léo Terziman 8ae9e2b555 In Collada: Added missing description of importer specific options 2015-03-10 09:20:00 +01:00
Léo Terziman 18ef31cc06 Merge remote-tracking branch 'official/master' into contrib 2015-03-09 11:31:15 +01:00
Alexander Gessler b1e8c192db Merge pull request #464 from turol/master
Clean up some warnings
2015-02-28 14:41:26 +01:00
Turo Lamminen db6d8a4dc5 Use attribute noreturn on both GCC and Clang
Both GCC and Clang define __GNUC__ and both also understand
attribute noreturn.
2015-02-27 23:09:12 +02:00
Turo Lamminen 308884f144 Remove unnecessary semicolons after function definition
Picked up by clang -Wextra-semi
2015-02-27 23:09:12 +02:00
Léo Terziman 2274c96e3b Merge remote-tracking branch 'official/master' into contrib 2015-02-18 17:22:44 +01:00
Léo Terziman d9a2293491 Improved handling of transparency in collada importer
+ started preliminary support for RGB_ZERO collada transparency mode
+ added option to manually invert transparency values to deal with broken exporters that don't follow the specs
2015-02-18 17:20:03 +01:00
mbp566 7bab42f55f Fixed many doxygen errors 2015-02-18 17:02:30 +09:00
yeonseok-yi 1bdb31f8aa Fixed error of aiQuaterniont::Rotate()
The function rotates a point to opposite direction.
Conjugate() should be applied to inverse of the quaternion.
2015-01-26 21:09:54 +09:00
Joe Hermaszewski 50dbb867ec Include stdint.h for uint64_t 2015-01-22 21:27:43 +00:00
Joe Hermaszewski 7494cb6e4b Use correct include file for INT_MAX
INT_MAX is defined in limits.h, not stdint.h
2015-01-22 20:19:34 +00:00
Léo Terziman b367d9b390 Fixed some warnings related to empty statement when using assert & building in release mode 2014-12-18 11:01:16 +01:00
Kim Kulling 951431db94 add missing documentation.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-12-01 21:27:48 +01:00
Kim Kulling 7a31a68cfc adapt c-api to get ImporterDesc for a given loader ( see https://github.com/assimp/assimp/issues/412 ).
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-12-01 20:34:15 +01:00
Filip Wasil 7224476ee1 Android JNI asset extraction support (API 9+)
Signed-off-by: Filip Wasil <filip.wasil@tieto.com>
2014-10-07 16:33:43 +02:00
abma 775b26e614 use std:: namespace for most cmath functions:
http://en.cppreference.com/w/cpp/header/cmath
2014-09-23 00:43:33 +02:00
Gargaj ae7aba3647 + comment 2014-08-28 16:34:39 +02:00
Gargaj d333e08343 add ambient light type, allow collada to load it 2014-08-28 16:27:29 +02:00
abma 6c5f9ecb06 fix most warnings with -pendantic 2014-08-18 02:09:06 +02:00
Gargaj 8f960f0ed2 avoid division by zero 2014-08-05 19:36:18 +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
Alexander Gessler 1207f84f7b Merge pull request #298 from Madrich/master
Collada fixes, adding XFile Exporter
2014-06-21 18:54:11 +02:00
Madrich 1cb01c54a3 Fix IOSFixed
Fix Author/AuthoringTool in Collada by MetaData
2014-06-20 00:08:11 +02:00
Alexander Gessler be5fc42e16 Fix memory corruption in the aiGetExportFormatDescription() API. Clarify Exporter doc. 2014-06-17 16:10:55 +02:00
Madrich edc7a950c4 ReFix the stuff before
Fix XFileExporter Normal
Fix Collada (Triangle->Poly)
2014-06-11 00:41:18 +02:00
Madrich 272a59cd36 Fix convertToLH for uv coordinates
Fix Collada export
Fix XFile export
2014-06-10 13:14:41 +02:00
Madrich ec2ce90654 Add Scene Author + AuthorTool
Add XFileExporter
Add Collada Triangle+Line export
Fix Obj Comment
2014-06-06 01:56:54 +02:00
Jonne Nauha 199d455261 Make aiMatrix4x4t ctor that takes in pos, rot and scale take in const refs. Fixes #284. 2014-05-30 02:01:29 +03:00
Jonne Nauha fe87b09246 Move pstdint.h for <= VC9 under include. Apps that include the Assimp headers need to have this available, as its pulled in by metadata.h. Fixes #290. 2014-05-30 01:57:21 +03:00
arkeon 3acf60f5d7 Correction on quaternion initialization values
a 0 0 0 0 quaternion is not valid
2014-05-27 11:26:55 +02:00
Kim Kulling 0f71d46c35 Merge pull request #276 from g-pechorin/master
lt operator for aiVector3
2014-05-14 21:35:48 +02:00
Peter LaValle 057a7ffe60 added a lt operator to the inline
added a lt operator to the inline, so that I can use aiVectors as stl keys and such
2014-05-14 14:16:53 +01:00
Peter LaValle 09fffac068 added a lt operator to the header
added a lt operator to the header, so that I can use aiVectors as stl keys and such
2014-05-14 14:16:49 +01:00
Kim Kulling fb1c9ab86d bugfix: fix cexport API for c compilers. 2014-05-11 16:50:35 +02:00
Kim Kulling 8c8c5329e9 bugfix:
- fix c-api: insert a missing typedef for the metadata api enum.
- gix c-api: move cpp-include to cpp-part of the api.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-05-04 15:24:12 +02:00
Jonne Nauha 283394d695 OgreImporter: Cleanup skeleton related code and code that populates the assimp scene. Tested skeleton/animation imports and it seems to work correctly now. 2014-05-02 00:28:14 +03:00
Jonne Nauha 6ea07f39e1 OgreImporter: Rewrote documentation for AI_CONFIG_IMPORT_OGRE_MATERIAL_FILE and AI_CONFIG_IMPORT_OGRE_TEXTURETYPE_FROM_FILENAME to reflect the current logic. And to be honest the earlier one was very confusing english and was not very clear what is happening with these config options. 2014-05-02 00:28:11 +03:00
Kim Kulling 825a61fbc0 update:
- update version info for 3.1
- aiGetVersionRevision will now return the git tag.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-05-01 11:32:15 +02:00
Jonne Nauha c329e81c94 Fix stdint.h include that broke the build for VC9 and below. 2014-04-30 05:58:19 +03:00
Léo Terziman 7c3a039349 Merge remote-tracking branch 'official/master' into contrib
Conflicts:
	include/assimp/matrix4x4.inl
	include/assimp/vector2.h
	include/assimp/vector3.h
2014-04-22 14:32:59 +02:00
xantares f48c8eccce Fix for issue #177 with mingw 2014-04-21 21:58:29 +02:00
Kim Kulling 38de6a658d bugfix:
- fix redundant checks against nullptr ( see https://github.com/assimp/assimp/issues/241 ).

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-03-27 20:33:08 +01:00
Kim Kulling f9d5852ef9 bugfix:
- add global namespace statement to sqrt.

refactoring:
- include cmath instead of math.h in c++ API.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-03-27 19:19:25 +01:00
Léo Terziman ed586a35ae Fixed compilation error when using swig 2014-03-24 11:24:27 +01:00
Léo Terziman 1f3be52079 Merge remote-tracking branch 'official/master' into contrib 2014-03-24 10:44:57 +01: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
Frederik Aalund 595529ef8b Refactored the metadata for inner consistency. 2014-03-15 08:37:45 +01:00
Frederik Aalund 9b78a180d9 Added a convenience overload for aiMetadata::Get using std::string as key. 2014-03-14 17:12:22 +01:00
Frederik Aalund 56f37a0465 Deprecated some abstraction and fixed a memory leak. 2014-03-14 15:36:12 +01:00
Frederik Aalund fc39fe9f40 Fixed a compile error involving unnecessary enum resolution qualification. 2014-03-14 15:01:36 +01:00
Frederik Aalund a8401ba377 Added support for heterogenous metadata on the aiNodes. 2014-03-14 14:17:34 +01:00
Léo Terziman 796e072898 Fixed warnings when using swig 2014-03-03 15:36:49 +01:00
Léo Terziman f54c85d4e6 Added custom root transformation for pre-transform vertices post-process step 2014-02-28 15:32:43 +01:00
Léo Terziman 843e56c252 Added matrix properties 2014-02-28 15:21:10 +01:00
Léo Terziman b90718bd21 Merge remote-tracking branch 'official/master' into contrib
Conflicts:
	code/IFCLoader.cpp
2014-02-26 18:06:46 +01:00
Alexander Gessler de914d375f Merge pull request #223 from VirusFree/master
[FBX ] Use AiNode's metadata to keep objects UserDefinedProperties
2014-02-22 16:40:38 -05:00
George Papadopoulos 5ef8c09dbb Use AiNode's metadata to keep per-node(and per-instance) FBX (3dsmax) UserDefinedProperties
Also simplify metadata structure to avoid unnecessary allocations (and make it easier for wrappers like AssimpNET to read it)
2014-02-22 21:57:01 +02:00
David Greaves 660d5c4e84 docs: clarify the use of Importer properties in post processing steps
Signed-off-by: David Greaves <david@dgreaves.com>
2014-02-17 23:09:56 +00:00
Léo Terziman ad55783f56 Boost libraries on windows are too much a hassle to handle, so thread safety is not worth all the trouble => think to move to c++11 thread support 2014-01-17 12:03:24 +01:00
Léo Terziman 34c3449cdd Always activate thread safety if possible 2014-01-17 12:03:18 +01:00
Léo Terziman 41175dacca Merge commit '6d630bec50fe7767296b0e5184a9c6c7b915df24' into contrib 2014-01-17 11:57:45 +01:00
Léo Terziman 7bc074857e Missing material functions for aiUVTransform added 2014-01-17 11:51:43 +01:00
Léo Terziman d28fc25c5c Merge commit 'cc3f8b82f9f6fb4b295a39a3f7ac55154145cc04' into contrib
Conflicts:
	CMakeLists.txt
2014-01-17 11:45:57 +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
Léo Terziman 2c4e55ac61 Fixed gcc /mingw building 2014-01-17 11:31:39 +01:00
Léo Terziman f5e3382d58 Correct some warnings when building with mingw 2014-01-17 11:30:51 +01:00
Léo Terziman bc40ebd730 Improved color comparison 2014-01-17 11:28:06 +01:00
Léo Terziman 365b3aa412 Improved math operation with epsilon support 2014-01-17 11:21:15 +01:00
Léo Terziman 6c0ebb679a Merge commit '87a0e7703258576f1a7e4ba763b961da70c1cd91' into contrib
Conflicts:
	code/ColladaExporter.cpp
2014-01-17 11:19:29 +01:00
Léo Terziman bbfd56046b Fixed constructor of aiMesh for improved lisibility 2014-01-17 10:33:54 +01:00
Léo Terziman 30c6a74e1d Improving constructors of aiNode & aiScene 2014-01-17 10:31:27 +01:00
Léo Terziman 6b471317d2 Adding support for matrix4x4 construction from position, rotation and scaling parameters 2014-01-17 10:27:11 +01:00
Léo Terziman 5e603d9ed8 Correcting a bug where the constructor & destructor of aiScene were not exported correctly in the assim library 2014-01-17 10:26:48 +01:00
Nick Overdijk 5b076fe234 Fixes warnings in clang for unrecognized attribute 'gcc_struct' 2013-12-14 01:40:37 +01:00
Marcel Metz 93fd1133ff Fixed mingw cross compiler issues. 2013-11-20 14:40:20 +01:00
acgessler faaea5224f Exporter: update documentation. 2013-10-05 16:18:36 +02:00
acgessler 9c3a0727c6 Material API: fix regression caused by previous commit 69e9e7c403
. Lots of importers use explicit template syntax for AddProperty(), changing to overloads now called the fallback template version. This caused material properties to be often registered as BINARY (instead of FLOAT, INT).
2013-10-03 17:10:01 +02:00
Alexander Gessler 69e9e7c403 aiMaterial: use overloads instead of template specializations. This fixes multiple instances of int material properties being accidentally registered as BINARY because the given type was unsigned int. 2013-09-18 15:17:04 +02:00
Alexander Gessler 45572e8079 Merge branch 'master' of github.com:assimp/assimp 2013-09-04 21:52:17 +02:00
Alexander Gessler fd0b3490d1 Clarify exporter doc: how to get a modifiable copy of a previously imported scene. 2013-09-02 21:33:43 +02:00
Alexander Gessler 0edb78d940 Add aiFreeScene() API for symmetry with aiCopyScene. 2013-09-02 21:32:20 +02:00
abma 169e5b9f35 fix error "Chunk is too large" with gcc >=4.7.0 / mingw64 2013-08-29 06:31:10 +02:00
Sherief Farouk 0d57e659cb Added AI_WONT_RETURN_SUFFIX mainly for Clang's static analyzer. 2013-08-04 10:10:21 -04:00
YoheiKakiuchi 5470f5fb28 add AI_CONFIG_IMPORT_COLLADA_IGNORE_UP_DIRECTION for not transforming position of vertices 2013-07-27 10:34:48 +09:00
Alexander Gessler 506d3fa154 Forward declare IOSystem in Exporter.hpp 2013-06-30 16:25:46 +02:00
Andy Maloney 1da281c1f8 Make sure members are initialized properly
Prefer initialization lists
Assignment operator should not return a const ref
2013-06-21 10:56:11 -04:00
Alexander Gessler 27c578675a Merge pull request #51 from asmaloney/init_fixes
Prefer init list and add missing initializations
2013-06-12 08:16:14 -07:00
Andy Maloney c6d1a73854 Fix a logging message and a comment 2013-06-12 09:01:05 -04:00
Andy Maloney 0e54b87b1e Prefer init list and add missing initializations 2013-06-12 08:59:47 -04:00
Dennis Schridde 2bdbcd78e7 Amend dd1a18149cac29a69a0242a5efc467498f5f05cd: Visibility attribute is needed for MSVC/C++ 2013-05-16 13:08:05 +02:00
Dennis Schridde a65a69fdc9 Fixes a bunch of errors with -pedantic -std=c99 and GCC 4.7.2: ISO C restricts enumerator values to range of ‘int’ 2013-05-16 13:08:05 +02:00
Dennis Schridde bcc311515a Fixes an error with -pedantic -std=c99 and GCC 4.7.2: ‘visibility’ attribute ignored on types 2013-05-16 13:08:05 +02:00
Jared Duke 6551fd4903 Update material.inl
aiMaterial::AddProperty template specializations are used by import methods in B3DImporter and SceneProcessor; they should be defined accordingly even when ASSIMP_BUILD_NO_EXPORT is defined.
2013-04-17 18:47:52 -07:00
Alexander Gessler fa5831f41a - add metadata support to aiScene. Some doc cleanup. Add const versions of aiScene::aiNode. 2013-03-28 20:54:12 +01:00
Alexander Gessler bdfcb4b0cb - add ASSIMP_BUILD_NO_COMPRESSED_IFC option. Properly integrate Q3BSP's unzip dependency into the build configuration. 2013-03-28 13:38:42 +01:00
Alexander Gessler c016198191 aiMesh: fix copy constructor so issue [3572335] (and any further instances of the same pattern in creating face arrays) is resolved. 2013-03-21 20:17:09 +01:00
Alexander Gessler 260568912c - Importer::ReadFileFromMemory/aiImportFileFromMemory() clarify wording in documentation 2013-03-10 19:15:14 +01:00
Andy Maloney b20023ed3d Pass by reference, not value 2013-02-10 22:23:13 -05:00
acgessler 7fd44f4ab7 Merge branch 'master' of git://github.com/assimp/assimp 2013-01-19 16:35:28 +01:00
Alexander Gessler ab9587dd1e Merge pull request #12 from ccxvii/master
Precision fix and Collada robustness fix.
2013-01-15 12:04:48 -08:00
Alexander Gessler bae9db2f03 Merge branch 'master' of git://github.com/assimp/assimp 2012-12-21 16:24:05 +01:00
ulfjorensen 84939d5aec - fixed preprocessor checks for some importers
- fixed warning about shadowing variables in quaternion.h


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1346 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-12-20 11:43:09 +00:00
ulfjorensen e88f6ef227 - copy&paste error in aiColor3D::operator- apparently nobody's using these. Thanks to Robin Tucker for pointing this out
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1342 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-12-03 12:00:36 +00:00
Tor Andersson c40b767016 Matrix to Quaternion conversion precision fix.
See below links for reasoning, but in short, avoid sqrt and division
of small values. It's also possible to normalize the quaternion after
the conversion, but better precision is preferable.

http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/index.htm
http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/ethan.htm
2012-11-28 13:02:51 +01:00
ulfjorensen 81aef90f4a - manually pulled the three smaller change requests from Github.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1331 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-05 09:13:09 +00:00
aramis_acg 54040901f0 - update Assimp.NET
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1330 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-03 02:49:19 +00:00
Alexander Gessler 3e86e1b857 - fbx: add import settings to public assimp config interface. 2012-08-11 16:41:44 +02:00
Alexander Gessler 776d8e339b Merge branch 'master' of https://github.com/assimp/assimp 2012-07-24 03:30:47 +02:00
aramis_acg 1378579224 - remove aiProcess_Debone from aiProcessPreset_TargetRealtime_MaxQuality as it seems to be causing issues (read: is buggy, consider kicking it out again). See http://zfx.info/viewtopic.php?f=5&t=2439&p=32278#p32223 for more info.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1292 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-07-17 22:25:45 +00:00
Alexander Gessler 4e9a0bba20 + add AI_CONFIG_IMPORT_NO_SKELETON_MESHES flag to control skeleton mesh visualization. No need for this in Blender, and difficult to just ignore the geometry created by it. 2012-06-21 17:24:50 +02:00
jonathanklein 29243071fa Ogre: Importerproperty to set Texture Mode from Filename (bla_n.png -> Normalmap etc.)
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1254 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-06-03 18:01:32 +00:00
aramis_acg ec6c62e005 - consistent use of ai_assert instead of assert.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1241 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-04-22 23:22:40 +00:00
aramis_acg adfef670cc - rename assert.h to ai_assert.h. See also https://sourceforge.net/tracker/?func=detail&atid=1067632&aid=3520178&group_id=226462
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1240 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-04-22 23:14:39 +00:00
aramis_acg d3030b2aea Patch [3520366] Docs: Spelling and grammar fixes for postprocess.h by Andy Maloney.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1239 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-04-22 23:02:24 +00:00
aramis_acg 5a81b42ebe - add mFileExtensions field to aiImporterDesc, BaseImporter::GetExtensionList is now longer virtual since this would be redundant.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1234 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-04-22 22:26:26 +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
kimmi 71b8fa7cb5 Bugfix : Commit not saved changes.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1226 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-03-20 22:41:39 +00:00
kimmi 694cf75070 Bugfix : Fixed a possibly crash bug in ~aiExportDataBlob, was using a wrong delete. ( merged from GitHub, thanks to Riku Palomäki ).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1224 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-03-20 21:12:38 +00:00
jonathanklein 6852eb6ffe - compiler error fixes for sample programs
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1171 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-02-18 10:53:58 +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
aramis_acg daf7c07ff1 # fix C issues in the headers. This fixes [3481648] (https://sourceforge.net/tracker/?func=detail&aid=3481648&group_id=226462&atid=1067632)
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1137 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-02-02 13:56:45 +00:00
aramis_acg ea3f655c57 - templatize math library. All standard math classes (i.e. aiMatrix4x4) have been replaced by templates which are usually named like the old type with a 't' postfix. For compatibility, typedefs to replace the old types exist. For the C interface, these still map to raw structures.
While principally backwards-compatible, this is still a breaking change since I also changed some method signatures (i.e. aiVector3t<TReal>(TReal) is now explicit). Normal users should not be affected, though.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1129 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-02-02 02:06:08 +00:00
aramis_acg 3f369342d6 - Redesign the C interface to allow per-import settings.
- Make C-API threadsafe even without boost (no longer a global importer <-> scene map).
- Cleanup headers.
- Change the way how Importer::pimpl is accessed - all users are no longer friends of Importer to avoid spoiling the public interface. Rather, pimpl is exposed via a public member function and anyone having the definition of ImporterPimpl can access it.

THIS IS A BREAKING API CHANGE for anyone using properties with the C API. It is, however, a huge step forward and finally makes our C API functionally equivalent to the C++ interface.

I hope we can adapt all ports as soon as possible. I'd be grateful if the respective maintainers could do this.

Documentation is not yet up to date.

All this is in anticipation to the upcoming 3.0 release, which I'm actively working on.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1111 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-01-13 14:07:58 +00:00
aramis_acg 20495de804 + add aiString::C_Str
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1110 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-01-13 00:44:27 +00:00
aramis_acg d3d82030c7 Fix [3472966] "The public include export.h has a reference to boost"
See http://sourceforge.net/tracker/?func=detail&atid=1067632&aid=3472966&group_id=226462

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1109 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-01-13 00:31:21 +00:00
ulfjorensen a73397198c - Bugfix #3457587: correct decomposition of matrices with negative scaling. Thanks to anonymous google account user for the fix.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1099 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-12-12 08:44:48 +00:00
aramis_acg 255ed412d5 + add Exporter::RegisterExporter and Exporter::UnregisterExporter pair of methods. Make parts of the internal export interface public to allow custom exporters to be added on the fly. This is a non-breaking API change.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1084 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-10-15 13:37:59 +00:00
aramis_acg c807fd65f3 - no longer distinguish between textured and non-textured default materials. Also, do not spit out dummy texture names. This was once a workaround to get some viewers to display a dummy texture rather than a plain shaded asset, but this is no longer appropriate. This involves removal of the public #define AI_DEFAULT_TEXTURED_MATERIAL_NAME.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1083 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-10-15 10:28:36 +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 9d85c8834d - extract MaterialHelper and move all of its members to aiMaterial in /include.
- pull in IOhannes' patch to set the gcc default visibility for all symbols to NO and to mark ASSIMP_API with __attribute__ ((visibility("default"))).
- drop unneeded ASSIMP_API from most internal classes in /code, we just need to keep some exports on Windows to keep AssimpView alive.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1066 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-08-22 20:22:51 +00:00
aramis_acg 36b3695a31 - improve symmetry between Assimp::Importer and Assimp::Exporter.
+ aiCopyScene -- a bit dysfunctional because we will also need getters and setters for all other scene components to avoid running into ownership & heap issues when users modify scenes.
# fix handling of postprocessing during exporting

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1061 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-08-04 08:53:59 +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 211a6cb0e7 # fix small flaw in the docs for the deboning process
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1035 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-28 15:56:32 +00:00
aramis_acg 323b9d8400 # make source UV index for tangent space computation configurable via the AI_CONFIG_PP_CT_TEXTURE_CHANNEL_INDEX option.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1027 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-06-02 14:02:30 +00:00
aramis_acg f522143909 + IFC: use custom triangulation algorithm to generate walls with openings. Introduce a configuration option to toggle the triangulation implementation.
# IFC: fix bug in boolean clipping code leading to polygons having undefined normals. 

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1006 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-05-18 18:08:18 +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 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
aramis_acg 2c83543b39 - remove aiAssert, use a plain assert instead. This removes the exit() call in Assimp.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@943 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-06 12:06:40 +00:00
aramis_acg 85cd9be46d # some fixes to reduce the size of the binary. Total savings are ~3%. Thanks to Krishty for his efforts in that regard.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@939 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-03 15:12:05 +00:00
aramis_acg 6dea8f2ecd + add transparent std::string overloads to Exporter API.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@928 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-04-03 10:36:20 +00:00
aramis_acg 5dd2bc1408 # bugfix Importer::SetPropertyBool
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@924 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-03-23 14:26:54 +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 621bdef663 - rework exporter interface to be based primarily on the existing IOSystem.
- implement ExportToBlob/aiExportToBlob via a custom IOSystem implementation.
- split exporter C and C++ interfaces.
+ test cases for the exporter interface

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@913 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-03-08 16:09:54 +00:00
aramis_acg f7eca27c1b # fix gcc warning in export API (deleting void* is undefined)
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@906 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-02-22 20:17:54 +00:00
aramis_acg 94767ecf8c Merge https://github.com/tonttu/assimp
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@903 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-02-20 00:01:52 +00:00
aramis_acg 2b9ad081e0 - CHANGE vertex count and texture channel count limits to 8. Adapt all parts of the code which depended on both of them being set to 4. Test suite passes.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@900 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-02-03 14:14:09 +00:00
kimmi 45fca4b005 BUGFIX : Fix compile error on SunOS xentros 5.11: symbol conflict.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@896 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-01-23 22:49:02 +00:00
ulfjorensen 3a4651b0ec Bugfix: SplitByBoneCountProcess sometimes split too early
Export API continued.
First version of the Collada Exporter added. Handles static geometry and node hierarchy upto now. 

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@894 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-01-21 15:37:00 +00:00
aramis_acg 553b3567c8 - work on export API prototype, now relies on IOStreams.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@893 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-01-11 22:15:28 +00:00
kimmi 1aa37848c9 BUGFIX : Add missing cpp-header- if file was included by a cpp-compiler.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@889 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-01-09 19:37:18 +00:00
aramis_acg e5f7fe0c3a - More work on the current draft of the export interface. Again, please comment.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@886 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-01-05 22:07:51 +00:00
ulfjorensen ae23c03bd9 First proposal of the Assimp export API. Please comment.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@885 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-01-05 15:33:01 +00:00
aramis_acg 9c0af14d75 - fix doc.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@884 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-01-05 15:03:14 +00:00
aramis_acg 24a0132598 + SplitByBonesCountProcess: make bone limit configurable.
- fix tabbing.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@883 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2011-01-05 13:22:44 +00:00
aramis_acg 09fbcfffd0 Fix [3148199] / crash in aiMaterial::Get<T>().
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@881 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-12-30 17:43:04 +00:00
aramis_acg 478d974344 # export aiAssert.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@879 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-12-18 20:20:09 +00:00
kimmi bd92f15128 - BUGFIX : Fix aiQuaternion::nomalize method.
- UPDATE : Improve performance by avoiding multiple divisions.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@873 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-27 13:53:34 +00:00
aramis_acg 76a733e2f4 - fix _DEBUG/DEBUG inconsistencies in favour of _DEBUG. Thanks to Carsten Fuchs to point it out!
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@869 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2010-11-26 11:30:25 +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
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