Commit Graph

238 Commits (ae031733c28d86146c685d2dd328d25b7a68a3fe)

Author SHA1 Message Date
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