Commit Graph

4899 Commits (6cca0789476fa0c5e3a9cf5baeeda806916c51b4)

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