Commit Graph

5139 Commits (5436e1680278b2ca0f21091112b3597ec13d02c9)

Author SHA1 Message Date
awr1 700d8e6614 Fix MinGW builds (issues related to pragmas and format strings) 2020-07-14 21:19:07 -05:00
Rahul Sheth abc6b9ce4c ifdef fixes to fix MSVC warnings 2020-07-14 19:00:38 -04:00
Rahul Sheth 209a61d0e7 Update hunter and utf8cpp inclusion 2020-07-14 19:00:23 -04:00
Ryan Styrczula 84e342acd7 DefaultIOStream: Remove assert on empty count
fwrite() is valid to call with a 0 count, and will simply return 0.
See:
    https://en.cppreference.com/w/cpp/io/c/fwrite
    http://www.cplusplus.com/reference/cstdio/fwrite/

There are code paths where StreamWriter will call Tell(), which calls
Flush(), which calls Write(buffer.data(), 1, buffer.size()). This can
happen when nothing has yet been written to the buffer, so size is 0.
2020-07-14 10:39:18 -04:00
Kim Kulling b19ebf5d54 Fix merge conflicts. 2020-07-14 09:02:14 +02:00
Kim Kulling 8cfd2a4cc1 Migrate OgreSerializer. 2020-07-14 09:00:06 +02:00
Kim Kulling f5d5d7c5ed
Merge branch 'master' into master 2020-07-13 20:35:24 +02:00
Ryan Styrczula 0c2f7a119c FBXExporter: Forgot WritePropColor defaultValue 2020-07-13 13:56:06 -04:00
Ryan Styrczula 6619ec8253 FBXExporter: Use scene metadata for global settings
Models with non-standard axes and scale are not imported and exported
correctly if the input metadata is ignored.
2020-07-13 13:56:06 -04:00
Kim Kulling 78d0b81b6c
Merge branch 'master' into patch-1 2020-07-12 18:54:34 +02:00
Kim Kulling eaac92830a Merge branch 'master' of https://github.com/LoicFr/assimp into LoicFr-master 2020-07-12 12:05:34 +02:00
Kim Kulling b1dd77fbbc
Merge branch 'master' into gltf2_sparseAccessor_export 2020-07-11 22:57:31 +02:00
Kim Kulling 306e03d497
Merge branch 'master' into extras_property_callback 2020-07-11 22:46:19 +02:00
Kim Kulling 21678df589 ogre + collada migration. 2020-07-10 22:25:38 +02:00
Robert Reif 628394baec check for invalid vertex 2020-07-07 23:29:54 -04:00
kimkulling 9aa468262f closes https://github.com/assimp/assimp/issues/3252: fix build. 2020-07-07 17:35:03 +02:00
Robert Reif 6c29247180 add triangle strip support to AC file loader 2020-07-06 17:41:14 -04:00
Max Vollmer (Microsoft Havok) fb11705dd0
Merge branch 'master' into gltf1_gltf2_split 2020-07-06 09:11:06 +01:00
Max Vollmer abf43eaf74 * Added ASSIMP_BUILD_NO_GLTF1_IMPORTER, ASSIMP_BUILD_NO_GLTF2_IMPORTER, ASSIMP_BUILD_NO_GLTF1_EXPORTER, and ASSIMP_BUILD_NO_GLTF2_EXPORTER to allow disabling GLTF1 and GLTF2 independently.
* ASSIMP_BUILD_NO_GLTF_IMPORTER and ASSIMP_BUILD_NO_GLTF_EXPORTER remain with same behavior as before
2020-07-05 19:22:31 +01:00
Kim Kulling d04f8b3174
Merge branch 'master' into defsIncludeFix 2020-07-05 18:59:37 +02:00
Kim Kulling 77b705048b fix merge issues. 2020-07-04 13:42:23 +02:00
Kim Kulling 839986ca14 next step of AMF-Migration. 2020-07-04 09:04:06 +02:00
Hill Ma 3fb7747429 Improve ToBinary() for double precision.
The constant 0x80000000 is specific to 32 bit types. Make the bit mask
according to the size of types.
2020-07-03 18:14:45 -07:00
Kim Kulling d74c10dcb7 Merge branch 'master' into pugi_xml 2020-07-03 17:29:38 +02:00
Malcolm Tyrrell 51150cb3df Ensure asserts are defined where expected. 2020-07-02 14:53:29 +01:00
Kim Kulling 693da43095 closes https://github.com/assimp/assimp/issues/3305: remove merge issue. 2020-07-02 15:22:06 +02:00
Kim Kulling b1369d0912 next steps. 2020-07-02 15:18:59 +02:00
Kim Kulling 7fda533484
Merge branch 'master' into double 2020-06-30 21:12:02 +02:00
Yingying Wang 97085c1c05 update sync 2020-06-30 11:48:37 -07:00
Yingying Wang 36f899bf09 sync update 2020-06-30 11:45:11 -07:00
Yingying Wang 3f2e5518eb update sync 2020-06-30 11:29:08 -07:00
Marc-Antoine Lortie 03340787ec Fixed variable in loop - HL1MDLLoader.cpp
Commit 7e5a0acc48 made changes to HL1MDLLoader.cpp. Several variables have been renamed. A loop variable 'i' was renamed to faceIdx, but one reference was left unchanged.
2020-06-29 07:50:51 -04:00
Kim Kulling eeb4a981bd
Merge branch 'master' into patch-2 2020-06-29 09:55:55 +02:00
Hill Ma 30f09e9fc0 Fix build when ASSIMP_DOUBLE_PRECISION is on.
Tested:
$ cmake -DASSIMP_DOUBLE_PRECISION=1 -DASSIMP_BUILD_MDL_IMPORTER=0 ..; make

The MDL importer is disabled due to the fact that there is some float-only code
in MDL. This also means bin/assimp and bin/unit would not link successfully with
the above build flags.
2020-06-28 17:36:21 -07:00
Kim Kulling fb20e15163 start to migrate colladat and amf 2020-06-27 15:57:06 +02:00
Evangel 6d85280c8d Added bool, removed unused debug parameter 2020-06-27 12:53:26 +10:00
Evangel f6b4370f6a Added arbitrary recursive metadata to allow for glTF2's extensions to be properly represented.
Primary changes are to include/assimp/metadata.h, adding in the aiMetadata GetAiType function,
adding the operator= to allow an aiMetadata type to be assigned, adding a check for the
AI_AIMETADATA type flag as it can't be trivially memcpy'd.

operator= is implemented with a by-value argument as then the copy is made by the copy
constructor and we can just swap everything out and let the destructor handle the mess.

Implemented parsing of the "extensions" flag on all glTF2 Nodes. Doesn't use the ReadValue
helper function on numbers as it did not seem to fill out the Nullable structure properly.
2020-06-26 14:28:41 +10:00
Kim Kulling b7b38c2282
Merge branch 'master' into patch-2 2020-06-25 16:52:40 +02:00
Kim Kulling ba6af9ff98
Merge branch 'master' into FindInvalidData 2020-06-25 16:41:24 +02:00
Kim Kulling 95e822a6ec
Merge branch 'master' into aiAssertHandler 2020-06-24 20:47:10 +02:00
Kim Kulling 1466bbacf8 fix unittests. 2020-06-24 20:30:02 +02:00
Kim Kulling ae05dbb252 define CheckValidFacesIndices also in release builds. 2020-06-23 21:11:18 +02:00
Kim Kulling 6205af4efb replace NULL and avoid ai_assert with more than 2 tests. 2020-06-23 21:05:42 +02:00
Malcolm Tyrrell 9188f56839 Allow assert handling to be replaced. 2020-06-23 11:55:51 +01:00
Ryan Styrczula 5717ea466f FindInvalidDataProcess: Mark removed meshes as "out"
There's a code path where an input scene only has a single mesh.
In this case, if ProcessMesh returns 2, we delete the mesh and move on
with the postprocessing. UpdateMeshReferences is not called and so the
deleted mesh is left dangling in nodes.

In a later step (SplitMesh in my testing), it then tries to deference a
null pointer and we explode.

With `out = true`, we can now hit the DeadlyImportError instead of a
segfault.
2020-06-22 17:24:16 -04:00
Filip Lundgren 2006286528
Fix Maya PBR & stingray texture detection 2020-06-22 23:14:16 +02:00
Filip Lundgren ba09e1ef94
Fix Blender .fbx metalness detection 2020-06-21 23:56:11 +02:00
Kim Kulling 6397bfbf90 replace NULL by nullptr on loadFile. 2020-06-21 12:03:38 +02:00
Kota Iguchi 6acaaee80f Check invalid vertex id for bone weight 2020-06-20 15:27:28 +09:00
Kim Kulling b3af5c5a14
closes https://github.com/assimp/assimp/issues/3253 : remove useless code 2020-06-17 20:37:39 +02:00
kimkulling 524e2e4728 fix warning, hopefully ... 2020-06-15 21:34:49 +02:00
Kim Kulling 31b8d4710f
Merge branch 'master' into issue_3165 2020-06-15 20:32:00 +02:00
Kim Kulling 15f11aec93
Merge branch 'master' into gltf2_targetNames_export 2020-06-14 09:43:09 +02:00
kimkulling f938a6b744 fix leak: just ignore broken texture coordinates. 2020-06-12 14:52:02 +02:00
kimkulling 1e0c5f26b4 Merge branch 'migenius-migenius-fix-texcoord' of https://github.com/assimp/assimp into migenius-migenius-fix-texcoord 2020-06-12 12:30:11 +02:00
kimkulling ad62e6e863 fix unittest check - cannot work, just crash shall not occurr any more. 2020-06-12 12:29:51 +02:00
Kim Kulling f67c71d5c7
Merge branch 'master' into fbx_blendshape_channelName 2020-06-12 10:55:32 +02:00
ywang e65434bf82 extra callback 2020-06-11 17:37:06 -07:00
ywang f57e7221c0 temp 2020-06-10 13:23:29 -07:00
Yingying Wang 578a7ac502 add Callback API in ExporterProperties 2020-06-09 11:20:48 -07:00
Kim Kulling ffaa634c48
Merge branch 'master' into issue_3165 2020-06-09 10:48:27 +02:00
Kim Kulling 88c1509d69
Remove dead code 2020-06-09 10:15:35 +02:00
Kim Kulling 620bebb999
diable warning only for gcc 8.0 or greater 2020-06-09 10:14:57 +02:00
Kim Kulling 42afc40d16
Disable warning only for gcc 8.0 or greater 2020-06-09 10:13:43 +02:00
Kim Kulling 35fb4c9370
Remove dead code 2020-06-09 10:07:25 +02:00
Kim Kulling 5c7bed01f1
remove dead code. 2020-06-09 10:06:50 +02:00
Paul Arden 9e46f9751f Check for invalid texture coordinate accessor. Fixes #3269. 2020-06-09 15:49:38 +10:00
Yingying Wang 8fed101432 avoid all zero 2020-06-08 16:18:11 -07:00
Yingying Wang f18f1a35f6 accommodate linux build 2020-06-08 14:49:50 -07:00
Yingying Wang 2065512470 remove comments 2020-06-08 14:41:53 -07:00
Yingying Wang 12dc736d94 Merge branch 'master' of https://github.com/thomasbiang/assimp into gltf2_sparseAccessor_export 2020-06-08 14:32:23 -07:00
Yingying Wang 26421aebc9 support channel name in blendshape name 2020-06-08 13:33:16 -07:00
Kim Kulling b37d42f6b5
Perform sanity check only in debug
closes https://github.com/assimp/assimp/issues/3255
2020-06-07 18:03:47 +02:00
Kim Kulling e6446e1e68
Merge branch 'master' into issue_3258 2020-06-07 08:23:04 +02:00
Alec 2c0df39ef3 Added rapidjson define to avoid warnings in c++17 2020-06-06 14:33:41 +02:00
Kim Kulling 62273b63e5
closes https://github.com/assimp/assimp/issues/3256: Remove redundand code 2020-06-06 12:22:01 +02:00
Yingying Wang 4e34853ac7 gltf2 export target names for blendshapes 2020-06-05 12:17:27 -07:00
Kim Kulling 6d04e16c7e
Merge branch 'master' into issue_3165 2020-05-28 21:51:58 +02:00
kimkulling d40a3026db closes https://github.com/assimp/assimp/issues/3165: fix gcc build. 2020-05-28 21:02:13 +02:00
FRICOTEAUX 87584eb007 glTF2: fix "file size doesn't match" issue when importing GLB in Blender 2020-05-28 11:05:38 +02:00
Yingying Wang 98767cbb08 pull master 2020-05-27 10:23:28 -07:00
Kim Kulling 2c9cfefe67
Merge branch 'master' into gltf2_sparseAccessor_import 2020-05-26 21:30:51 +02:00
Kim Kulling e33ed9e7a1
File is duplicated
closes https://github.com/assimp/assimp/issues/3238
2020-05-25 20:30:18 +02:00
Kim Kulling 78c9ac2889
Merge branch 'master' into gltf2_sparseAccessor_import 2020-05-25 16:11:01 +02:00
Kim Kulling 2be731d1bf Merge branch 'master' into pugi_xml 2020-05-22 10:09:46 +02:00
Kim Kulling a97e4c15b3
Merge branch 'master' into master 2020-05-21 21:15:50 +02:00
Kim Kulling ecfca1d5c5
Merge branch 'master' into verboseLogging 2020-05-21 18:30:52 +02:00
Yingying Wang 50f0a86798 conditional export 2020-05-19 16:10:41 -07:00
Ryan Styrczula c4055d04b4 Fix double free caused in FindInvalidDataProcess
In debug builds, there's no issues, but in release, an invalid mesh that
is deleted in FindInvalidDataProcess will be double free'd when the
parent scene is destroyed.
2020-05-19 14:38:10 -04:00
Yingying Wang c10e409a5d merge 2020-05-18 12:16:45 -07:00
Yingying Wang 193deb3441 cleanup 2020-05-18 12:01:09 -07:00
Yingying Wang e39c632809 cleanup 2020-05-18 11:50:51 -07:00
Yingying Wang 0897c4c7be merge 2020-05-18 11:31:44 -07:00
Yingying Wang 02cbd36271 pull master 2020-05-18 11:15:18 -07:00
Kevin Shepherd e9a3cc2c8a
Fixed rotation order bug in BVH Loader
This bug has been present since after the 4.10 release.
It fixes the issue "play the bvh error" #2187
Almost all bvh files are affected, such as any of the CMU library.
The bug is caused by the introduction of channelMap in the BVHLoader.cpp - function void BVHLoader::CreateAnimation(aiScene *pScene).  The channelMap loses the rotation order present oin the BVH file, and always applies the rotations in X,Y,Z order.
2020-05-18 16:07:46 +01:00
Malcolm Tyrrell 14692368d5 Same for LogDebug -> LogVerboseDebug 2020-05-18 11:55:14 +01:00
Malcolm Tyrrell 87a7662bee More thinks using VERBOSE_DEBUG 2020-05-18 11:45:00 +01:00
Kim Kulling 2438e1b52e
Merge branch 'master' into gltf2_fix_skin_recursion 2020-05-18 09:05:28 +02:00
Kim Kulling 4b0a3305b1
Merge branch 'master' into master 2020-05-17 13:54:10 +02:00
Kim Kulling 4f24b3dac2 Merge branch 'added_check_before_using' of https://github.com/qarmin/assimp into qarmin-added_check_before_using 2020-05-17 11:48:24 +02:00
Kim Kulling cfbdacb02a
Merge branch 'master' into bug-3201-collada_root_meshes 2020-05-16 20:50:34 +02:00
Yingying Wang b8e39b58d1 clean up 2020-05-15 12:32:58 -07:00
Yingying Wang f6720271cb sparce accessor exporter 2020-05-15 12:20:31 -07:00
Malcolm Tyrrell d70685d37f Fix typo 2020-05-15 17:50:48 +01:00
Malcolm Tyrrell 90cdbd9d9a Fix ups 2020-05-15 17:46:50 +01:00
Malcolm Tyrrell 434c5e3d37 More verbose logging 2020-05-15 17:29:49 +01:00
Malcolm Tyrrell e11d78596f Use verbose debug logging in certain places 2020-05-15 17:26:17 +01:00
Malcolm Tyrrell 5e0136d737 Add concept of verboseDebug 2020-05-15 17:23:07 +01:00
Malcolm Tyrrell 2ffd1cb8db nits 2020-05-15 17:22:15 +01:00
Malcolm Tyrrell bcca3a0d79 No need for bespoke macros 2020-05-15 17:22:02 +01:00
Malcolm Tyrrell 6be0ce1ec9 Initial pass at adding logging 2020-05-15 17:21:45 +01:00
Matias Kangasjärvelä 7a16a7a7e4 Fix infinite recursion in gltf2 skin parsing
Previously parsing a node caused the skin that was attached to it
to be parsed, which caused the skins node joints to be parsed,
which could cause the skin to be re-parsed leading to infinite or
at the very least exponential recursion.

The fix is to just get a reference to a temporarily uninitialized
skin as they were being parsed after the scene graph just to be safe
anyway. This way we avoid the recursion problem and all the references
will be valid in the end.
2020-05-15 16:48:41 +03:00
kimkulling 464d4cf99a Merge branch 'master' of https://github.com/inhosens/assimp into inhosens-master 2020-05-15 15:08:30 +02:00
kimkulling 246ec2b0dc Merge branch 'migenius-fix-ortho' of https://github.com/migenius/assimp into migenius-migenius-fix-ortho 2020-05-15 13:37:03 +02:00
kimkulling a6b5abd698 Merge branch 'master' of https://github.com/zyndor/assimp into zyndor-master 2020-05-15 08:51:46 +02:00
Kim Kulling 2571b47a28
Merge branch 'master' into bug-3177-dae-geo-id 2020-05-13 20:24:53 +02:00
Yingying Wang e9b67cdb89 gltf2 import sparse accessor 2020-05-11 14:34:35 -07:00
Jeremy Cytryn c3a21666da Make gltf2 export normal normalization safe
This avoids introducing NaNs e.g. when the input mesh has 0-length normals
2020-05-11 12:02:38 -07:00
Jeremy Cytryn c5a9fbd47f Gracefully handle NaNs and Infs in gltf2 accessor bound computation 2020-05-11 12:02:38 -07:00
Jeremy Cytryn aef4ecada5 Fail gltf/gltf2 export whenever invalid / incomplete JSON is generated
This can happen currently for example if NaNs are introduced in accessor bounds as rapidjson cannot write NaN/inf floats (see subsequent commit for fix there) and will halt writing to buffer at this point.  Fix here ensures that whenever anything like this happens we throw an exception so this ends up as a registered export failure case, rather than silently exporting the incomplete JSON
2020-05-11 12:02:38 -07:00
hoshiryu 3fdcd0861f Fix fbx rotation ; 2020-05-11 10:28:05 +02:00
kimkulling a1bcca2c99 remove step prototype: does not work this way. 2020-05-07 14:00:40 +02:00
Kim Kulling 89a865ce19
Merge branch 'master' into master 2020-05-06 22:07:39 +02:00
Sercan Degirmenci 201347700f fix incorrect header path on framework build 2020-05-06 16:15:23 +03:00
Yingying Wang 60e8146b9f fix wrong target idx when importing 2020-05-05 12:51:40 -07:00
RichardTea 56a4e61533 Collada: Don't copy the scene when exporting
This was purely to add a virtual top-level node
Use a flag instead.
Also add more const
2020-05-05 10:16:13 +01:00
RichardTea 6e447b2c44 Merge branch 'bug-3177-dae-geo-id' into bug-3201-collada_root_meshes 2020-05-05 09:52:08 +01:00
RichardTea d1ae6ac77a Fix typo in <visual_scene>
Swapped Id and Name
2020-05-05 09:51:41 +01:00
RichardTea fa1d2f09db
Merge branch 'master' into bug-3177-dae-geo-id 2020-05-05 09:33:48 +01:00
Kim Kulling ddee1b1ddb
Merge branch 'master' into aaronfranke-file-formatting 2020-05-05 10:21:46 +02:00
kkulling 4e16716924 Merge branch 'file-formatting' of https://github.com/aaronfranke/assimp into aaronfranke-file-formatting 2020-05-05 10:17:52 +02:00
Kim Kulling bf95d1da7c
fix conversion 2020-05-04 21:48:46 +02:00
RichardTea 8e73984a11 Collada Root Nodes aren't allowed to have meshes
Create a null parent node instead
2020-05-04 17:47:09 +01:00
RichardTea 6e200cb0d3 Merge branch 'master' into bug-3177-dae-geo-id
Impossible merge, have discarded upstream
2020-05-04 13:59:09 +01:00
RichardTea ea917bd4ae Move Collada into AssetLib folder
Should make the merge easier
2020-05-04 13:54:49 +01:00
Kim Kulling 91fa9a102b closes https://github.com/assimp/assimp/issues/3181: fix typo for light type. 2020-05-03 12:17:32 +02:00
Kim Kulling 3b06f57150 add missing inclde + 2020-05-02 21:11:47 +02:00
Kim Kulling 514593548d add assert-test for nullptr. 2020-05-02 21:07:41 +02:00
Kim Kulling 3329e76263 closes https://github.com/assimp/assimp/issues/3178: throw exception in case of invalid export stream. 2020-05-02 21:06:55 +02:00
Kim Kulling f8e6512a63 Move format importer and exporter into its won folder. 2020-05-02 15:14:38 +02:00
RichardTea 1dabb1a094 Collada: Fix crash with AI_CONFIG_IMPORT_COLLADA_USE_COLLADA_NAMES
Add unit test for this
2020-05-01 14:59:09 +01:00
RichardTea 3e2dd186d1
Merge branch 'master' into bug-3177-dae-geo-id 2020-05-01 12:08:12 +01:00
RichardTea 5b9f207f1f ColladaExporter cleanup
Namespace, NULL and includes
2020-05-01 11:54:34 +01:00
RichardTea ee16d2c4c9 Fix camera, light and bone unique ids
Bones don't have a unit test yet
2020-05-01 11:13:38 +01:00
RichardTea 083ebdbc2e Collada Export: More unique Ids
Nodes, Materials, Animations, Lights, Cameras, Bones
2020-04-30 18:28:06 +01:00
Kim Kulling 2d9d112015 fix warning 2020-04-29 21:35:42 +02:00
Kim Kulling 1c30b7bf8e tryout: check if leak is coupled to type double. 2020-04-29 21:31:01 +02:00
Kim Kulling e0bc0f7fad try to fix double memleak. 2020-04-29 21:19:15 +02:00
Kim Kulling da2bf5c7a4 fix wrong size 2020-04-29 21:13:46 +02:00
Kim Kulling f808ed9fb5 fbxconverter: fix memoryleak. 2020-04-29 20:52:49 +02:00
Kim Kulling c6131ce38a scenecombiner: fix leak. 2020-04-29 20:43:23 +02:00
RichardTea ff9f3b8608 Collada: Ensure <geometry> has unique id
Use the "id" for mesh names by default.
Set option AI_CONFIG_IMPORT_COLLADA_USE_COLLADA_NAMES to use the mesh "name" instead
2020-04-29 17:17:46 +01:00
RichardTea 2c6ac23a4e Apply Assimp clangformat to touched Collada files 2020-04-29 14:21:17 +01:00
Rafał Mikrut 6967a02fcb
Merge branch 'master' into added_check_before_using 2020-04-28 18:33:29 +00:00
qarmin 4dfdbbf171 Check index before using 2020-04-28 20:31:59 +02:00
Kim Kulling efa046366e
Retrigger build 2020-04-28 09:14:53 +02:00
luca 4488e3e745 build on Linux with gcc and clang; warning as error only for 'assimp' target 2020-04-27 23:38:33 -07:00
Paul Arden 81abd90ee1 Fix reading of orthographic camera data. Fixes #3028. 2020-04-28 10:07:56 +10:00
Kim Kulling b0c9711894
Small format finding 2020-04-27 15:16:57 +02:00
Inho Lee 629320a3a0 Add timescale for collada 2020-04-27 11:52:04 +02:00
luca d98787f35b CI: use clang on Unix, msvc on Windows;Remove explicit flags in CMakeLists.txt; 2020-04-26 12:50:42 -07:00
Kim Kulling 6c1e21d754 fix formatting. 2020-04-26 19:14:30 +02:00
Kim Kulling bafb8e3189 closes https://github.com/assimp/assimp/issues/3165: remove deprecated code whch causes compiler warning. 2020-04-26 08:59:52 +02:00
Kim Kulling 638df2ceac
Merge branch 'master' into master 2020-04-25 12:07:06 +02:00
Kim Kulling 9b1759dcc2
Merge branch 'master' into migenius-migenius-rsws53-mig-2 2020-04-22 19:59:53 +02:00
Kim Kulling ca70b44e44 Merge branch 'migenius-rsws53-mig-2' of https://github.com/migenius/assimp into migenius-migenius-rsws53-mig-2 2020-04-22 19:58:41 +02:00
Kim Kulling c36b028412
fix type error for template deduction. 2020-04-21 16:39:18 +02:00
Kim Kulling c91d3764ca
Merge branch 'master' into optimized_bonelimits 2020-04-21 08:45:50 +02:00
Kim Kulling f71b332ed1
Update glTF2Asset.inl
fix VS-compiler warning.
2020-04-19 21:14:47 +02:00
Kim Kulling e3563212d7
Merge branch 'master' into master 2020-04-19 21:13:12 +02:00
Kim Kulling e0f6eb09e6
Merge branch 'master' into optimized_bonelimits 2020-04-17 20:37:28 +02:00
Hehongyuanlove 9c52fd7633
Update D3MFExporter.cpp 2020-04-17 12:58:41 +08:00
Hehongyuanlove e9a72a5053
repair formate 3MF 2020-04-17 12:38:07 +08:00
Hehongyuanlove 3bbc8e76bd
Rgba2Hex to repair rgba(1,1,1,1) 2020-04-17 12:34:05 +08:00
Kim Kulling c0dc26de8e
Merge branch 'master' into GLTF2_recursive_references_fix 2020-04-16 11:29:37 +02:00
Kim Kulling 996abd3fbe
Merge branch 'master' into GLTF2_invalid_buffer_fix 2020-04-16 11:08:29 +02:00
Kim Kulling d12e938a70
Merge branch 'master' into ifdef_export_defines 2020-04-16 10:24:23 +02:00
Kim Kulling e341eadfd9
Fix typo 2020-04-16 10:23:50 +02:00
Timur Umayev 69f8d47941 glTF2 support targetNames 2020-04-15 09:39:46 +01:00
György Straub e4ceccb42d
Merge branch 'master' into master 2020-04-12 15:58:25 +01:00
Max Vollmer (Microsoft Havok) a14b5fb06f
Merge branch 'master' into GLTF2_invalid_buffer_fix 2020-04-10 08:44:19 +01:00
Max Vollmer (Microsoft Havok) 485d7ab52e
Merge branch 'master' into GLTF2_recursive_references_fix 2020-04-10 08:44:18 +01:00
Kim Kulling 79af2b1a5c
Merge branch 'master' into kimkulling_dev 2020-04-09 19:55:45 +02:00
György Straub 755f3748f1
Merge branch 'master' into master 2020-04-07 11:46:14 +01:00
Kim Kulling 9a11d91cb8 code reformattings. 2020-04-06 13:33:03 +02:00
Kim Kulling 131aed73b0 closes https://github.com/assimp/assimp/issues/2166: add missing setter for metadata. 2020-04-06 11:16:16 +02:00
Kim Kulling 132ecae6f4
Merge branch 'master' into kimkulling_dev 2020-04-04 18:28:50 +02:00
György Straub 956c57f18e
Merge branch 'master' into master 2020-04-03 13:42:59 +01:00
Max Vollmer (Microsoft Havok) a07bf8b26f
Merge branch 'master' into GLTF2_recursive_references_fix 2020-04-03 08:40:32 +01:00
Max Vollmer (Microsoft Havok) d966f3394b
Merge branch 'master' into GLTF2_invalid_buffer_fix 2020-04-03 08:40:29 +01:00
Kim Kulling c21a1ffffa
Remove comments to increase readability 2020-04-01 11:16:39 +02:00
Kim Kulling a7208b02e0
Merge branch 'master' into assimp_gltf2_exporter 2020-04-01 08:42:48 +02:00
Alexey Medvedev 53990ffa42 Check for existed bone 2020-03-31 14:18:51 -07:00
György Straub 87e2d3a54d Added support for glTF2 sparse accessors.
Refactored Accessors, pulling out reusable bits between those
and sparse accessors' indices / values.
2020-03-31 11:28:26 +01:00
Max Vollmer (Microsoft Havok) 54419eb9a0
Merge branch 'master' into GLTF2_invalid_buffer_fix 2020-03-31 09:54:12 +01:00
Max Vollmer (Microsoft Havok) 806d81c919
Merge branch 'master' into GLTF2_recursive_references_fix 2020-03-31 09:54:01 +01:00
Alexey Medvedev 3ef46b0edd Weights and bones count checks 2020-03-30 16:56:33 -07:00
Alexey Medvedev 5e93b9ea8b Fixed bone splitting with excessive amount of bones with 0 weight 2020-03-30 12:42:32 -07:00
Kim Kulling 6973aea6da fix compiler warnings. 2020-03-30 20:41:39 +02:00
Kim Kulling 4c177ad72e fix possible warnings 2020-03-30 20:33:43 +02:00
Kim Kulling d51b89f3ce
trigger build 2020-03-29 13:44:14 +02:00
Kim Kulling b1165cff28
Merge branch 'master' into kimkulling_dev 2020-03-29 12:07:20 +02:00
Ville Ruusutie 222b145307
Merge branch 'master' into optimized_bonelimits 2020-03-29 12:54:07 +03:00
Kim Kulling 9b83d74830 apply code-conventions to unrealloader 2020-03-28 09:48:55 +01:00
Kim Kulling 27e1a20efe
Update 3DSConverter.cpp
Trigger build.
2020-03-27 20:46:32 +01:00
Kim Kulling 3a206a424d
Merge branch 'master' into kimkulling_dev 2020-03-27 18:25:13 +01:00
Kim Kulling e543a58dfb
Update m3d.h
fix more alignment errors.
2020-03-27 18:23:22 +01:00
Kim Kulling 2cfdbe2d50
Update m3d.h
Fix alignment bug.
2020-03-27 16:27:07 +01:00
Kim Kulling 7a01061c3e
Update m3d.h
Try to fix build error.
2020-03-27 15:39:49 +01:00
Kim Kulling 60750161d5
Update m3d.h
replace assignment by memcpy.
2020-03-27 15:28:32 +01:00
Ville Ruusutie 855452831c
Merge branch 'master' into fbx_rotation_fix 2020-03-27 14:36:00 +02:00
Kim Kulling 32c59643f2
Update m3d.h
fix alignment issue.
2020-03-27 11:38:38 +01:00
Kim Kulling 80323b57bc
Update UnrealLoader.cpp
Fix static code analysis findings.
2020-03-27 11:30:40 +01:00
Ville Ruusutie 7a2bc5f8f3
Merge branch 'master' into optimized_bonelimits 2020-03-27 07:12:25 +02:00
Ville Ruusutie 69176ad425
Merge branch 'master' into optimized_bonelimits 2020-03-26 21:28:47 +02:00
Ville Ruusutie 7f521b4eb4
Merge branch 'master' into fbx_rotation_fix 2020-03-26 21:28:03 +02:00
Marc-Antoine Lortie 609632c6a5 Added missing functionalities to C API.
The C API functions that have been added are the following:

Vector2:
- aiVector2AreEqual
- aiVector2AreEqualEpsilon
- aiVector2Add
- aiVector2Subtract
- aiVector2Scale
- aiVector2SymMul
- aiVector2DivideByScalar
- aiVector2DivideByVector
- aiVector2Length
- aiVector2SquareLength
- aiVector2Negate
- aiVector2DotProduct
- aiVector2Normalize

Vector3:
- aiVector3AreEqual
- aiVector3AreEqualEpsilon
- aiVector3LessThan
- aiVector3Add
- aiVector3Subtract
- aiVector3Scale
- aiVector3SymMul
- aiVector3DivideByScalar
- aiVector3DivideByVector
- aiVector3Length
- aiVector3SquareLength
- aiVector3Negate
- aiVector3DotProduct
- aiVector3CrossProduct
- aiVector3Normalize
- aiVector3NormalizeSafe
- aiVector3RotateByQuaternion

Matrix3x3:
- aiMatrix3FromMatrix4
- aiMatrix3FromQuaternion
- aiMatrix3AreEqual
- aiMatrix3AreEqualEpsilon
- aiMatrix3Inverse
- aiMatrix3Determinant
- aiMatrix3RotationZ
- aiMatrix3FromRotationAroundAxis
- aiMatrix3Translation
- aiMatrix3FromTo

Matrix4x4:
- aiMatrix4FromMatrix3
- aiMatrix4FromScalingQuaternionPosition
- aiMatrix4Add
- aiMatrix4AreEqual
- aiMatrix4AreEqualEpsilon
- aiMatrix4Inverse
- aiMatrix4Determinant
- aiMatrix4IsIdentity
- aiMatrix4DecomposeIntoScalingEulerAnglesPosition
- aiMatrix4DecomposeIntoScalingAxisAnglePosition
- aiMatrix4DecomposeNoScaling
- aiMatrix4FromEulerAngles
- aiMatrix4RotationX
- aiMatrix4RotationY
- aiMatrix4RotationZ
- aiMatrix4FromRotationAroundAxis
- aiMatrix4Translation
- aiMatrix4Scaling
- aiMatrix4FromTo

Quaternion:
- aiQuaternionFromEulerAngles
- aiQuaternionFromAxisAngle
- aiQuaternionFromNormalizedQuaternion
- aiQuaternionAreEqual
- aiQuaternionAreEqualEpsilon
- aiQuaternionNormalize
- aiQuaternionConjugate
- aiQuaternionMultiply
- aiQuaternionInterpolate

In addition, a const qualifier has been added to aiQuaterniont::Rotate to allow call to this method via a const aiQuaterniont pointer.
2020-03-26 13:08:40 -04:00
Kim Kulling 96c7c567e6
Merge branch 'master' into kimkulling_dev 2020-03-26 11:56:45 +01:00
Max Vollmer (Microsoft Havok) 3c9751ce0c
Merge branch 'master' into GLTF2_recursive_references_fix 2020-03-26 10:16:58 +00:00
kimkulling ccd13436da fix memory leak during export 2020-03-25 16:37:43 +01:00
napina 14b8d1242b Added pre and post rotation handling to FBXConverter::GenerateSimpleNodeAnim. Fixed quaternion interpolation flip. Cleaned code. 2020-03-25 08:20:31 +02:00
napina b962af93fc Merge branch 'master' of https://github.com/assimp/assimp 2020-03-24 21:35:22 +02:00
Max Vollmer (Microsoft Havok) ec17aff6d6
Merge branch 'master' into GLTF2_invalid_buffer_fix 2020-03-24 11:56:44 +00:00
Max Vollmer (Microsoft Havok) ef20cdc430
Merge branch 'master' into GLTF2_guarantee_rootnode_fix 2020-03-24 11:56:42 +00:00
Max Vollmer (Microsoft Havok) 2820edee54
Merge branch 'master' into GLTF2_recursive_references_fix 2020-03-24 11:56:38 +00:00
simon chen 891b1d4b3f
Merge branch 'master' into fix_FBX_no_preservePivots_bug 2020-03-24 14:38:23 +08:00
Andy Maloney 046f50880f {cmake} Prefix assimp options with "ASSIMP_" to avoid pollution when included as a submodule
When libraries are included as submodules in large projects, having an option with a generic name like "BUILD_DOCS" is not very helpful. (e.g. one project I work on includes many libraries as submodules)

It can also clash with options from other libraries which can break things.
2020-03-23 12:35:32 -04:00
napina bb4bcb442a Merge branch 'master' of https://github.com/assimp/assimp 2020-03-23 10:35:06 +02:00
Max Vollmer (Microsoft Havok) 2006eeed85
Merge branch 'master' into GLTF2_recursive_references_fix 2020-03-23 08:07:25 +00:00
Max Vollmer (Microsoft Havok) 94da6d61a4
Merge branch 'master' into GLTF2_invalid_buffer_fix 2020-03-23 08:03:29 +00:00
Kim Kulling 6f8d96b57e
Merge branch 'master' into kimkulling_dev 2020-03-23 09:00:41 +01:00
Max Vollmer (Microsoft Havok) 973e38ad97
Merge branch 'master' into GLTF2_guarantee_rootnode_fix 2020-03-23 07:57:38 +00:00
napina f0243cc7f3 Changed AI_LMW_MAX_WEIGHTS*2 to 8 which is same thing. 2020-03-22 15:58:12 +02:00
Kim Kulling c0ae9b6040 fix invalid check 2020-03-22 14:21:24 +01:00
Kim Kulling 68a9fa2df3 reformat unittests. 2020-03-22 12:13:09 +01:00
napina d5d30c898b Optimized LimitBoneWeightsProcess. Added SmallVector to reduce heap allocations. Simplified algorithm and removed unnecessary copying. 2020-03-22 12:47:42 +02:00
Kim Kulling 4283e61189 fix clang-compiler warning: wrong move constructor. 2020-03-21 18:25:49 +01:00
Kim Kulling 089ab0693a fix static-code-analysis check. 2020-03-21 18:03:35 +01:00
Kim Kulling 7d624e7f60 obj: add missing init. 2020-03-21 09:00:29 +01:00
Kim Kulling 9f7d9becb2 fix the linux build. 2020-03-21 08:56:49 +01:00
Aaron Franke 1529f9518f
Make file formatting comply with POSIX and Unix standards
UTF-8, LF, no BOM, and newlines at the end of files
2020-03-21 02:34:12 -04:00
kkulling b40769c395 try to fix linux build.2 2020-03-20 13:18:49 +01:00
chenmou.cm 7c3fd351d3 fix no preservePivots bug 2020-03-20 17:19:27 +08:00
kimkulling ac3f08a4d8 fix 3rdparty warnings. 2020-03-20 09:49:36 +01:00
kimkulling 2ee948eb84 fix missing parthesis. 2020-03-19 17:07:21 +01:00
kimkulling 5b8e6832c3 add mssing move constructor. 2020-03-19 16:53:05 +01:00
kimkulling de06c860ea add missing constructor. 2020-03-19 16:20:55 +01:00
kimkulling 9ba014739a fix compiler warning. 2020-03-19 15:25:34 +01:00
kimkulling 4d917c97bd fix warnings detected in vs2017. 2020-03-19 12:58:41 +01:00
kimkulling 68f7f545a9 fix typo. 2020-03-19 11:09:20 +01:00
Kim Kulling 9aa5e3e04f fix new vs2013 warnings. 2020-03-18 21:32:17 +01:00
Kim Kulling 097d2faeea fix vs2013 specific warnings. 2020-03-18 19:31:30 +01:00
kimkulling d1afd97ec2 fix 2 more warnings for vs2013. 2020-03-18 16:48:32 +01:00
Kim Kulling 017b3238ba
Update IFCReaderGen_2x3.h
Fix a typo
2020-03-18 16:20:38 +01:00
Kim Kulling 959446e416
Update IFCReaderGen_2x3.h
Disable warning
2020-03-18 15:52:16 +01:00
Kim Kulling f17b04168f
Merge branch 'master' into GLTF2_recursive_references_fix 2020-03-18 13:58:35 +01:00
Kim Kulling f68c60c7c6
Update StepReaderGen.h
disable warning
2020-03-17 20:32:23 +01:00
Kim Kulling a2fa19aa78
Merge branch 'master' into enable_vs_warning_all 2020-03-17 19:19:29 +01:00
kimkulling a9e8f65941 fix the build - add misisng forward declaration for aiVector3t. 2020-03-16 10:50:07 +01:00
Kim Kulling 27c125ef4d Add 2013-spcific compiler warning disabling statements. 2020-03-15 18:22:49 +01:00
Kim Kulling 856ca9f2dd Fix static-code findings, 2020-03-15 12:16:17 +01:00
Kim Kulling 976091a6f6 ix compiler warning for pragma statements. 2020-03-15 11:47:05 +01:00
Kim Kulling 9e91a33d76 fix review findings. 2020-03-15 10:28:37 +01:00
Kim Kulling 8b6f95ec30 Obj: apply clang format. 2020-03-15 10:21:08 +01:00
Kim Kulling 4210318a34
Merge branch 'master' into enable_vs_warning_all 2020-03-15 10:19:49 +01:00
Kim Kulling 0357333c81 fix all unittests. 2020-03-15 10:17:54 +01:00
kimkulling 255758e6ff fix read for precision-depending data. 2020-03-14 11:16:44 +01:00
kimkulling dc04759492 fix unittests part 2. 2020-03-13 17:00:14 +01:00
Kim Kulling 3c97447c9c
Merge branch 'master' into gltf2_blendshape_export 2020-03-13 13:26:08 +01:00
Yingying Wang 733e5343c8 export blendshape positions/normals in gltf2/glb2 2020-03-12 12:14:17 -07:00
kimkulling b295fda22c fix unittests part 1. 2020-03-12 17:38:42 +01:00
kimkulling 19b40397a9 fix misor findings. 2020-03-11 17:42:10 +01:00
Max Vollmer 3f75ef68ae Assimp guarantees in its docs that mRootNode is never NULL.
glTF2Importer::ImportNodes therefore must always create a root node, or throw an exception.

A GLTF2 file is invalid without a scene, so the importer should throw in that case. For GLTF2 files with a scene without nodes, it should create an empty root node.
2020-03-11 15:47:05 +00:00
Max Vollmer 1bc7c710d6 Added a check to detect and prevent recursive references in GLTF2 files 2020-03-11 09:54:24 +00:00
Max Vollmer 84e060a816 Change: ExtractData throws exception instead of returning false if data is invalid.
Explanation: The return value of ExtractData is never checked anywhere in code. However if it returns false, outData remains uninitialized. All code using ExtractData assumes outData is initialized and proceeds to using it. I haven't encountered a real-life case where this goes wrong - but the simple fact that it can go wrong is a red flag. Instead of relying on every bit of code checking the return value and handling this properly, I think it makes much more sense to have ExtractData throw an exception. It obviously is an exceptional situation, and throwing makes sure that no code that doesn't explicitly handle such a scenario continues running and potentially causing harm.
2020-03-11 09:40:42 +00:00
kimkulling 69551e81ed Merge branch 'enable_vs_warning_all' of https://github.com/assimp/assimp into enable_vs_warning_all 2020-03-11 10:15:25 +01:00
kkulling f8757322be fix warnings 2020-03-11 09:43:55 +01:00
Kim Kulling 7e7555a91b fix compiler warnings in tools and test- 2020-03-11 00:43:44 +01:00
Kim Kulling 02e5698a38 fix linker issues. 2020-03-09 22:49:32 +01:00
kimkulling f3b6b78d4d small refactorings. 2020-03-09 10:55:32 +01:00
Kim Kulling e8d2b84017 clean all warnings for vs-2019 2020-03-08 21:24:01 +01:00
Sebastian Matusik 8b9abc58e7 ifdef the exporters as specifying harsher linker flags than what's in default CMake causes linking issues. 2020-03-04 17:15:09 -08:00
Yingying Wang bb62249f0c fix gltf2 exporter memory crash 2020-03-04 14:52:26 -08:00
Kim Kulling 0b227219b7
Merge branch 'master' into gltf2_broken_bones_count 2020-03-03 11:33:56 +01:00
Kim Kulling 920535165d next fixed warnings 2020-03-01 13:15:45 +01:00
Sebastian Matusik 710dbba52d Trimmed trailing whitespaces 2020-02-28 19:19:10 -08:00
Sebastian Matusik 496fcd35c1 Trimmed trailing whitespaces 2020-02-28 19:17:53 -08:00
Sebastian Matusik 5f35d62d61 Fix for #3037 cause glTF2Importer creating bunch of bones with 0 for vertex with index 0 2020-02-28 18:43:47 -08:00
Sebastian Matusik 22311883ce Fix for #3037 [FATAL] SplitByBoneCountProcess::SplitMesh goes into infinite loop 2020-02-28 18:42:22 -08:00
Kim Kulling 03182c21b8 xml-migration amf - next steps. 2020-02-26 22:19:42 +01:00
Adrian Iusca 919ae489fc
Merge branch 'master' into master 2020-02-25 23:32:31 +02:00
Paul Arden ae50c4ebdf Add support for orthographic camera information and use in glTF2 importer. Fixes #3030. 2020-02-25 14:45:00 +11:00
Paul Arden fb5b01958a Fix to read orthographic camera data. Manual merge for this branch. Fixes #3028 2020-02-25 11:03:07 +11:00
Kim Kulling e4b2fd246d
Merge branch 'master' into remove-else-endif-constructs-cmake-files 2020-02-24 20:08:17 +01:00
Adrian Iusca 28f4b95ff5
Merge branch 'master' into master 2020-02-24 21:05:51 +02:00
Marc-Antoine Lortie edfaaed56f Removed uneeded expression in else() and endif() constructs.
The following changes were tested against building with a master copy.

For a more detailed report, please read the followings below:

The flags that were checked were the ones checked by default + the following:

ASSIMP_BUILD_ASSIMP_VIEW
ASSIMP_BUILD_SAMPLES

The list of compilable projects in Visual Studio were the following:

- assimp
- assimp_cmd
- assimp_simpleogl
- assimp_simpletextureddirectx11
- assimp_simpletexturedogl
- assimp_viewer
- INSTALL
- IrrXML
- uninstall
- unit
- UpdateAssimpLibsDebugSymbolsAndDLLs
- ZERO_CHECK
- zlib
- zlibstatic

The solution that was generated with the new changes comprised the same number of projects as the one from the master, unmodified. All projects except UpdateAssimpLibsDebugSymbolsAndDLLs were built without any error. All tests were run.

UpdateAssimpLibsDebugSymbolsAndDLLs could not be built because of the reasons explained in issue #3004.
2020-02-23 07:09:35 -05:00
iamAdrianIusca f28b087d16 small improvements in the CMakeLists.txt file
If ASSIMP_NO_EXPORT is not defined:
- don't add the macro for the exporters
- don't include the files for all the exporter
- don't display any messages about what exporters are enabled or not
2020-02-21 20:17:38 +02:00
Kim Kulling 3f5136b7b2
Merge branch 'master' into master 2020-02-19 21:52:57 +01:00
iamAdrianIusca 4de0237167 small fix 2020-02-18 21:55:35 +02:00
iamAdrianIusca a5524ffcd9 more changes 2020-02-18 19:02:14 +02:00