Max Vollmer
1db51503d8
Throw instead of assert on invalid file input
2020-12-14 16:44:56 +00:00
Max Vollmer
5436e16802
* Fix memory leak in GLTF2 Importer that occurs when an exception gets thrown while constructing a scene
...
* Fix crash in GLTF2 Importer when a scene with dangling/uninitialized pointers gets deleted after an exception was thrown
* Fix crash in GLTF2 Importer when channel sampler is not set (negative index)
2020-12-14 16:37:02 +00:00
Jean-Louis Boudrand
d18fce3f06
Fix https://github.com/assimp/assimp/issues/3054
...
Corrected the animation of each bone of an animation were exported in different animations (+tabs fixes)
2020-12-13 17:02:50 +01:00
Jean-Louis Boudrand
8701a86c9d
Fixed a crash of the Gltf 2 exporter in the case of an animation without a translation, rotation or scale animation key.
2020-12-10 23:47:54 +01:00
Kim Kulling
816bbc852c
Merge branch 'master' into master
2020-12-08 19:54:04 +01:00
FRICOTEAUX
b47c5c8c27
glTF2Exporter: fix crash when exporting a scene with several meshes per node (regression coming from commit e8d2b84
on 08/03/2020 "clean all warnings for vs-2019")
2020-11-30 20:11:41 +01:00
Max Vollmer
7d72c78c8e
Some improvements
2020-11-30 15:20:51 +00:00
Max Vollmer
6ed1488e6e
* Improved error messages
...
* Throw instead of asserts on invalid file input
2020-11-30 15:04:06 +00:00
Kim Kulling
4590f06756
Merge branch 'master' into master
2020-11-25 16:57:49 +01:00
Evangel
98e42e22b8
Added check around setting pScene->mName from asset.scene.
2020-11-22 15:49:41 +10:00
Evangel
30584c1ec1
Replaced name with scene_name to avoid shadowing.
2020-11-22 15:36:08 +10:00
Evangel
67abcb10ba
Added mName to aiScene. Primarily to provide access to the "name" member of glTF2 scenes.
2020-11-22 15:33:31 +10:00
Kim Kulling
d10bf9a0d3
Merge branch 'master' into master
2020-11-18 21:30:58 +01:00
Inho Lee
e3083c21f0
glTF2: import correct animation values for CUBICSPLINE
...
CUBICSPLINE interpolation has tangent values with the animation data.
Current import don't care this interpolation type but it will help not
to fetch tangent values instead of animation data.
Note: Assimp cannot support interpolation types yet.
2020-11-17 17:21:07 +01:00
Kim Kulling
c4ba5eeeea
Merge branch 'master' into issue_3500
2020-11-16 21:52:14 +01:00
Jean-François Verdon
09ca11d063
Fixing issue 3500, invalid outer cone angle readed from gltf2 file on machines which defines M_PI as a double value
2020-11-16 09:19:13 +01:00
Inho Lee
8845d7eed3
Prevent to generate redundant morph targets for glTF2
2020-11-11 20:49:22 +01:00
Malcolm Tyrrell
0f246edb97
Prevent GetValue from corrupting memory
2020-11-06 13:43:16 +00:00
Malcolm Tyrrell
34e3e6293a
Style
2020-11-06 09:57:48 +00:00
Malcolm Tyrrell
0af05e7a60
Better message
2020-11-05 15:10:52 +00:00
Malcolm Tyrrell
01b2088dd3
A missing bufferview was causing a crash.
2020-11-05 15:02:41 +00:00
Max Vollmer
4006bb71f4
Fixes for crashes in GLTF2 Importer
2020-10-23 12:01:43 +01:00
Inho Lee
ad7f8910e9
Rollback the method to handle empty bones for GLTF2
...
A patch made the assimp to ignore empty bones.
However, some assets can have bones which don't have weights
but are connected to other bones.
2020-10-16 17:09:17 +02:00
Kim Kulling
c0e58c1895
Merge branch 'master' into gltfBufferViewSizeFix
2020-09-22 20:02:16 +02:00
Max Vollmer (Microsoft Havok)
9c1edaee96
Merge branch 'master' into gltfBufferViewSizeFix
2020-09-16 10:08:47 +01:00
Kim Kulling
9e2c4e0cf4
Merge branch 'master' into rbsheth_hunter_rapidjson
2020-09-14 09:00:11 +02:00
Max Vollmer
615ffdf93f
What: Throw instead of assert when input file is invalid.
...
Why: Assimp shouldn't crash on invalid files. Asserts are disabled on Release builds.
2020-09-10 10:47:58 +01:00
Rahul Sheth
59c8b4ed84
Move RapidJSON definitions to CMake
2020-08-27 16:51:06 -04:00
Malcolm Tyrrell
0f6127e90e
No need to build strings.
2020-08-18 18:21:20 +01:00
Malcolm Tyrrell
b7c789da67
Stop concatenating std::strings. Use formatter.
2020-08-18 17:35:08 +01:00
Rahul Sheth
ad18e365e5
Fixing more warnings
2020-07-24 16:33:36 -04:00
Kim Kulling
c7a9ef30cc
Merge branch 'master' into fix-mingw-priumax
2020-07-24 11:14:15 +02:00
Kim Kulling
0f442b1ff2
Merge branch 'master' into gltfIndexOutOfRangeFix
2020-07-23 11:27:34 +02:00
Kim Kulling
b2e53783de
Merge branch 'master' into fix-mingw-priumax
2020-07-17 12:07:46 +02:00
Kim Kulling
df8792d24b
Merge branch 'master' into gltf1_gltf2_split
2020-07-16 10:45:55 +02:00
Malcolm Tyrrell
04df5f8b1e
Don't use make_unique
2020-07-15 15:47:25 +01:00
Malcolm Tyrrell
e1bab44e19
Exception safety
2020-07-15 15:02:27 +01:00
Malcolm Tyrrell
37e1fb9cd7
Fix message
2020-07-15 14:19:13 +01:00
Malcolm Tyrrell
f3170a96ba
Ensure data does not depend on faces we may not have created.
2020-07-15 12:36:48 +01:00
Malcolm Tyrrell
fff6396e3c
Rename to avoid overloading problems.
2020-07-15 12:22:28 +01:00
Malcolm Tyrrell
212903e935
Unit test for all indices out of range, and fix.
2020-07-15 12:19:00 +01:00
Malcolm Tyrrell
c0d978786e
Fix warning
2020-07-15 09:12:52 +01:00
Malcolm Tyrrell
a56134ba33
Drop faces when indices are out of range.
2020-07-15 09:05:09 +01:00
awr1
3bf6963d20
Use a better divider for import error
2020-07-14 21:34:30 -05:00
awr1
93d567e3b1
Fix sprintf format string
2020-07-14 21:32:22 -05:00
awr1
700d8e6614
Fix MinGW builds (issues related to pragmas and format strings)
2020-07-14 21:19:07 -05: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
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
Yingying Wang
97085c1c05
update sync
2020-06-30 11:48:37 -07:00
Yingying Wang
3f2e5518eb
update sync
2020-06-30 11:29:08 -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
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
ad62e6e863
fix unittest check - cannot work, just crash shall not occurr any more.
2020-06-12 12:29:51 +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
Kim Kulling
ffaa634c48
Merge branch 'master' into issue_3165
2020-06-09 10:48:27 +02:00
Kim Kulling
620bebb999
diable warning only for gcc 8.0 or greater
2020-06-09 10:14:57 +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
Alec
2c0df39ef3
Added rapidjson define to avoid warnings in c++17
2020-06-06 14:33:41 +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
Yingying Wang
98767cbb08
pull master
2020-05-27 10:23:28 -07:00
Kim Kulling
78c9ac2889
Merge branch 'master' into gltf2_sparseAccessor_import
2020-05-25 16:11:01 +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
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
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
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
90cdbd9d9a
Fix ups
2020-05-15 17:46:50 +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
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
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
Yingying Wang
60e8146b9f
fix wrong target idx when importing
2020-05-05 12:51:40 -07: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
f8e6512a63
Move format importer and exporter into its won folder.
2020-05-02 15:14:38 +02:00