Commit Graph

1241 Commits (230bee2e34fda52e13ba2c7e79195061c1251794)

Author SHA1 Message Date
RichardTea 86a25b62e4 Better aiMesh ABI compatibility with 5.0.1, make smaller
Move new mTextureCoordsNames member to end of struct
Convert to pointer-to-array, saving ~8KB per aiMesh in almost all cases
Add C++ accessor functions for simpler usage
2021-11-09 13:03:06 +00:00
Kim Kulling 30143e9626
Merge branch 'master' into MalcolmTyrrell/jsonSchemaSupport 2021-11-09 10:53:58 +01:00
RichardTea aaae3e3a10 size_t is 32bit on some platforms
Also assert if size_t is smaller than uint32_t (probably not necessary)
Note: 32bit builds will crash OOM if a really large model is loaded, as cannot allocate that much in total, let alone contiguously.
2021-11-08 15:05:20 +00:00
RichardTea 9433fc526a Apply clangformat 2021-11-08 14:42:21 +00:00
RichardTea 69cafe64b4 Cap glTFv1 & 2 json size to ~4GB
Ensures size_t cannot overflow
Limits the maximum contiguous memory allocation to something plausible.
2021-11-08 14:41:13 +00:00
RichardTea ee19ce6021 3DS Export: Add support for aiShadingMode_PBR_BRDF
Export as Phong.
If no Diffuse texture, export the PBR base color instead,
2021-11-08 11:06:15 +00:00
Kim Kulling 5a3401b69f
Update D3MFOpcPackage.cpp
- Log an error in case of a nullptr-exception in reading out the 3MF-Archive
- closes https://github.com/assimp/assimp/issues/4153
2021-11-02 10:38:38 +01:00
Alex Rebert 107371657b
Fix out-of-bounds read in ReadFirstSkin
Fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=25401
2021-10-28 23:12:54 -04:00
Alex Rebert 1fe9d405f5
Fix out-of-bounds read in MDLImporter
Fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=24502
2021-10-28 22:38:40 -04:00
Alex Rebert 932dfe0562
Fix overflowing allocations in MDLMaterialLoader
Some allocations might underallocate due to integer overflows. This
commit ensures that we are throwing an exception if the allocation size
does not fit in an unsigned int.

Fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=25341
2021-10-28 22:27:19 -04:00
Alex Rebert 30f17aa206
Fix heap out-of-bounds write in _m3d_safestr
While there is a 256 character limit when computing the length of the
newly allocated strength, that limit was missing when copying the
string. This commit adds a new length check in the copy loop, preventing
it from writhing out of bounds.

Fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=34416
2021-10-28 21:32:38 -04:00
Kim Kulling 8c0b869998
Merge branch 'master' into MalcolmTyrrell/jsonSchemaSupport 2021-10-28 13:38:41 +02:00
Kim Kulling e01b488075
Remove dead code. 2021-10-26 22:06:10 +02:00
Kim Kulling 791cb195be
Merge branch 'master' into x3d_pugi_migration_artenuvielle 2021-10-20 21:14:43 +02:00
Kim Kulling f3baab1153
Merge branch 'master' into master 2021-10-20 20:51:43 +02:00
Kim Kulling cff5035b5f
Merge branch 'master' into master 2021-10-19 09:31:19 +02:00
Kim Kulling 36c937cc19
Merge branch 'master' into debian-fixes 2021-10-18 09:07:47 +02:00
Kim Kulling 0e3d058504 Add some exporter macros. 2021-10-17 15:10:25 +02:00
Kim Kulling a82dc887fc
Merge branch 'master' into x3d_pugi_migration_artenuvielle 2021-10-14 09:27:07 +02:00
IOhannes m zmölnig 3b8126d26a Fix spelling mistake 2021-10-08 08:48:01 +02:00
Malcolm Tyrrell ceddfe19d8 Add comment with link to schema repo. 2021-10-07 10:01:32 +01:00
Malcolm Tyrrell a283a255a5 Allow schema checking of glTF2 file. 2021-10-07 10:01:32 +01:00
diharaw 0fb66f8437 Replaced AI_MATKEY_IOR with AI_MATKEY_REFRACTI. 2021-10-07 09:39:08 +01:00
diharaw b01d008bc0 Revert "Removed KHR_materials_ior support."
This reverts commit 0738742611.
2021-10-07 09:36:53 +01:00
diharaw 0738742611 Removed KHR_materials_ior support. 2021-10-07 09:30:22 +01:00
Marc 656b0b25d8
Fix warning for array comparison
The code previously compared two float arrays with the != operator. This is deprecated in Visual Studio 2019 and results in a warning that leads to an error when compiling with warnings as errors. Small fix to make the build work.
2021-10-05 19:24:42 +02:00
Kim Kulling ac6b8988df
Add support for normal maps, the classic way
- get compiant to tinyobjloader and other importers
- closes https://github.com/assimp/assimp/issues/3726
2021-10-01 14:24:40 +02:00
Kim Kulling 1f76b2e6b9
Merge branch 'master' into Q1MDLgroup 2021-10-01 13:36:55 +02:00
diharaw addd541251 Added gltf2 KHR_materials_ior support. 2021-09-30 08:47:53 +01:00
diharaw d3276de47d Added gltf2 KHR_materials_volume write support. 2021-09-30 08:10:02 +01:00
diharaw 200bf8df7a Added gltf2 KHR_materials_volume import support. 2021-09-29 17:05:17 +01:00
Kim Kulling 6cb6a6acdd
Merge branch 'master' into const-tokens 2021-09-24 13:37:57 +02:00
Kim Kulling 95263b2e54
Update ObjTools.h 2021-09-21 11:34:58 +02:00
Kim Kulling fb5b5e9d40
Fix possible nullptr dereferencing in material parsing
* Return 0.0f for empty buffer
* closes https://github.com/assimp/assimp/issues/3442
2021-09-21 11:06:18 +02:00
Hill Ma 79f3368c85
Merge branch 'master' into static 2021-09-17 09:06:16 -07:00
René Martin e92177cb99 changed use and def attribute check for x3d importer to upper case
This is how it is specified in the standard.
2021-09-17 14:24:57 +02:00
Kim Kulling d0f7200196
Update X3DImporter_Geometry3D.cpp 2021-09-16 21:01:44 +02:00
krishty 8c84afaff0
Merge branch 'master' into const-tokens 2021-09-15 23:31:00 +02:00
Artenuvielle 70dfdb8f9d
Merge branch 'master' into x3d_pugi_migration_artenuvielle 2021-09-15 14:51:38 +02:00
René Martin a8a6aa2bd8 fixed some compiling issues 2021-09-15 14:49:46 +02:00
Kim Kulling 880a2f25bb
Merge branch 'master' into remove-useless-code 2021-09-14 23:33:34 +02:00
Kim Kulling 8a975549a9 Add missing override 2021-09-14 20:49:20 +02:00
Kim Kulling 0fef0e1101 Move duplicate code to glFT common header. 2021-09-14 20:45:36 +02:00
Kim Kulling 18531e3677 Next iteration for c++11 features. 2021-09-13 22:38:20 +02:00
Artenuvielle c7e9c6580a
Merge branch 'master' into x3d_pugi_migration_artenuvielle 2021-09-12 11:45:00 +02:00
René Martin 3f6a371b64 migrated x3d importer to pugixml reader 2021-09-12 11:37:33 +02:00
Krishty 5895c0c22c more const in format detection
BaseImporter::SearchFileHeaderForToken() expected a pointer to a non-const token list. This was probably an oversight, as nobody would realistically expect the function to change the list. Furthermore, it prevented token lists from being compiled to read-only memory, in some cases even causing the compiler to generate thread-safe initialization.

The list is now const and all callers declare their token lists static const, thus compiling them to read-only memory.
2021-09-11 23:23:05 +02:00
Krishty 4cf4e7454f removed useless code
In destructors, zeroing attributes or clearing containers is utterly useless.
2021-09-11 21:51:20 +02:00
Hill Ma 93edbe883f Use Safe Constants Idioms for ObjFileParser::DEFAULT_MATERIAL.
Reference: "A static Class Member" in https://abseil.io/tips/140
2021-09-10 11:56:37 -07:00
Kim Kulling bc0a2762df
Merge branch 'master' into master 2021-09-09 09:16:50 +02:00
René Martin 3001d88172 Merge branch 'master' into x3d_pugi_migration 2021-09-07 15:04:08 +02:00
Kim Kulling 768024d5a0
Merge branch 'master' into master 2021-09-07 11:39:34 +02:00
Kim Kulling 74e8a6a366
Merge branch 'master' into xgl-fix 2021-09-07 09:03:40 +02:00
Max Vollmer (Microsoft Havok) bf8e36ae28 Fixed typo 2021-09-02 10:07:28 +01:00
Max Vollmer (Microsoft Havok) 72ea80b41f Revert last change (gltf2::Ref type is not a pointer and has a bool() operator) 2021-09-02 10:00:56 +01:00
Kim Kulling d710d0700f
Make nullptr test more explicit. 2021-09-02 10:10:42 +02:00
Max Vollmer (Microsoft Havok) 4c86772091 Added another nullptr safety check 2021-09-02 08:27:03 +01:00
Madrich 9b535d1c15 Fix Double Precision errors/warnings 2021-08-31 12:59:31 +02:00
Kim Kulling 155db25883
Merge branch 'master' into ms-maxvollmer/code_improvements 2021-08-31 08:55:47 +02:00
Doug Roeper 96f0787f51
Fix the -Werror=unused-but-set-parameter warning by removing the skipFirst variable. 2021-08-30 18:15:37 -04:00
Max Vollmer (Microsoft Havok) 51f294c587 Fixes issues our internal compliance and code quality tool found:
* Adds nullptr checks and asserts to protect certain code paths
* Fixes wrong integer type in a printf call
* Adds const to const values
* Prevents integer overflow with explicit casts
2021-08-30 14:59:17 +01:00
Viktor Kovacs 82d8c4e849
Merge branch 'master' into compressed_json 2021-08-30 10:11:03 +02:00
Kim Kulling 38c611a02c
Update ColladaLoader.cpp 2021-08-30 08:33:35 +02:00
Kim Kulling e2c2a60c45 Remove not used attribute 2021-08-29 18:41:07 +02:00
Kim Kulling c9d35b6edc Remove C++14 feature. 2021-08-29 18:35:44 +02:00
Kim Kulling ceafa95610 Remove unused header 2021-08-29 10:36:02 +02:00
kirillsurkov 5ca2cbb7ae Fix MinGW build 2021-08-28 20:04:37 +03:00
Kim Kulling c9b76f5255 Decrease xml-serializer complexity 2021-08-28 14:20:12 +02:00
Kim Kulling df739f00dd
Merge branch 'master' into issue_3398 2021-08-28 13:56:50 +02:00
Kim Kulling 69051bbc2c Add missing docu 2021-08-28 13:46:41 +02:00
Kim Kulling a7bc858698
Fix review finding. 2021-08-28 13:36:57 +02:00
Kim Kulling 3e090b21f5 Fix setup of embedded texture loading 2021-08-28 13:33:25 +02:00
Viktor Kovacs b9b62d106c
Merge branch 'master' into compressed_json 2021-08-27 18:18:28 +02:00
kovacsv b39f38b73c Add export property for assimp json exporter to write compressed json (without whitespaces). 2021-08-27 18:17:27 +02:00
Kim Kulling eabfc05bbb
Handle empty keys 2021-08-27 10:41:25 +02:00
Kim Kulling 6439305379
Remove dead code 2021-08-24 20:53:55 +02:00
Kim Kulling 61ba320a04
Merge branch 'master' into master 2021-08-24 20:53:04 +02:00
kovacsv 0590a39159 Fix M3D import crash and memory leak.
The same default material pointer was assigned to all the materials in the scene, so poor destructor tried to free the same pointer multiple times.
2021-08-24 07:26:20 +02:00
kovacsv 468aa50aed mingw build fix 2021-08-19 13:50:26 +02:00
Kim Kulling f3903e34a4
Merge branch 'master' into master 2021-08-18 07:32:16 +02:00
Kim Kulling a486a698e8
Merge branch 'master' into clang13 2021-08-16 21:35:59 +02:00
Kim Kulling a850f312ac
Merge branch 'master' into ms-maxvollmer/crash_fixes_08_2021 2021-08-16 21:00:07 +02:00
Kim Kulling 27231c3f52
Merge branch 'master' into bound 2021-08-16 20:48:17 +02:00
Max Vollmer (Microsoft Havok) c1e830cf3b The GLTF2 specs aren't very specific about the restrictions of the number of keyframes in sampler input and output. It seems logical that they should be the same, but there is an official sample model from Khronos where output has more keyframes. I thus assume that the GLTF2 standard allows more keyframes in output, but not in input. Fixed the check accordingly. 2021-08-13 17:46:10 +01:00
Max Vollmer (Microsoft Havok) de2f5cf021 Crash fixes 2021-08-13 16:26:42 +01:00
Kim Kulling 4b1ff645e3 closes https://github.com/assimp/assimp/issues/3398: Add support for embedded textures 2021-08-12 21:13:07 +02:00
Mykhailo Smoliakov 26defda671
Merge branch 'master' into master 2021-08-12 08:20:59 +03:00
Robert Ubiñas 69c152d7c1 Add missing diagnostic push 2021-08-11 18:57:21 -04:00
Mykhailo Smoliakov c3fcbfd2c1 Fix issue of incorrect reading of PBR properties such as base and emissive color in FBX 2021-08-11 08:54:34 +03:00
Kim Kulling a16cd95b16
Merge branch 'master' into fix-indent 2021-08-10 21:39:13 +02:00
Kim Kulling a55518f6fc
Merge branch 'master' into no-empty-string-literals 2021-08-10 20:41:40 +02:00
Kim Kulling 89eadb934f
Merge branch 'master' into trim-trailing-whitespace 2021-08-09 21:24:22 +02:00
Kim Kulling 0aa36ee550
Merge branch 'master' into master 2021-08-07 12:06:23 +02:00
krishty f8fe3d1341
Merge branch 'master' into fix-indent 2021-08-06 09:40:34 +02:00
krishty 00b22d1397
Merge branch 'master' into no-empty-string-literals 2021-08-06 09:40:31 +02:00
krishty 6cb54d1c95
Merge branch 'master' into trim-trailing-whitespace 2021-08-06 09:40:03 +02:00
bearbit 408b5053a4 update LWO importer(available lwo3) 2021-08-03 20:18:14 +03:00
Hill Ma 8d6d6b48c3 Obj: make a predicate more robust.
Since we might encounter invalid input it is a good idea to check the actual
size of the array.
2021-08-02 12:04:15 -07:00
krishty 1ee2be8c5c
Merge branch 'master' into trim-trailing-whitespace 2021-07-31 18:01:48 +02:00
Kim Kulling 00a2cd20f9
Merge branch 'master' into remove-dead-code 2021-07-31 17:00:58 +02:00
Krishty bb53961fa9 more range-based for
f6b4370f6a and 7c822f23bd introduced raw loops on data types with heavy nesting; range-based for suits better here
2021-07-29 14:57:25 +02:00
Krishty 42a7611f85 style fix: indentation 2021-07-29 14:39:22 +02:00
Krishty 4991f728c8 style fix – initializing and assigning empty std::string properly
for details, see #3764
2021-07-29 14:23:52 +02:00
Krishty 758116b083 removed trailing spaces and tabs from source and text
This commit ignores the “contrib” folder in order to prevent merge conflicts in dependencies, should these be updated via git.
2021-07-29 13:28:51 +02:00
Krishty 738c31c3ea removed useless code
Found while reviewing #3880
2021-07-28 16:48:53 +02:00
xiaohunqupo d065513e27
Merge branch 'master' into master 2021-07-28 17:02:28 +08:00
Kim Kulling f87550fdbc
Fix Issue3760
- Convert left-handed coordinate system to right-handed coordinate system
- Rescale model by 0.01
- closes https://github.com/assimp/assimp/issues/3760
2021-07-28 10:39:39 +02:00
xiaohunqupo 8ee2c721d9
StepExporter support polygon mesh
StepExporter support polygon mesh
2021-07-28 16:32:27 +08:00
Kim Kulling aeae2cf242
Update M3DWrapper.h 2021-07-26 14:44:26 +02:00
Kim Kulling e8e720d584
Update M3DWrapper.h 2021-07-26 13:41:54 +02:00
Kim Kulling 291c0a4faa
Fix build failure
- Fix the failure
- Put inlined stuff out of declaration
- Add some docu
2021-07-26 13:13:21 +02:00
Kim Kulling df2e7208fb
Fix fuzzer issue in m3d-importer
- closes https://github.com/assimp/assimp/issues/3974
- Check for nullptr before dereferencing name in m3d-data-instance.
2021-07-26 11:56:26 +02:00
Kim Kulling b7f88f3063 closes https://github.com/assimp/assimp/issues/3957: checkj for empty positions. 2021-07-26 10:51:16 +02:00
Kim Kulling 4e28a3072f
Merge branch 'master' into gltf_fixes 2021-07-23 20:37:25 +02:00
Kim Kulling e07af07311
Merge branch 'master' into double 2021-07-22 10:07:40 +02:00
Kim Kulling d0885af634
Merge branch 'master' into gltf_export_id_issue_3978 2021-07-21 13:47:47 +02:00
Adrian Perez 30d342534a Fix issues encountered during integration atempt 2021-07-16 14:29:28 -07:00
Kim Kulling 5171aa52d1
Remove dead code 2021-07-16 11:47:38 +02:00
Hill Ma aa883eda19 FBX: fix double precision build. 2021-07-15 11:54:55 -07:00
RichardTea 632b2db97c Ensure glTFv2 scene name is unique
Use the provided scene name if extant
Fixes issue #3978
2021-07-14 13:39:41 +01:00
RichardTea 0c6c238956
Merge branch 'master' into collada_makehuman_issue_3984 2021-07-14 11:33:43 +01:00
Kim Kulling 9c207cd865
Merge branch 'master' into rbsheth_fix_hunter 2021-07-13 20:45:22 +02:00
RichardTea bff1d012bd Read matrix and input (shared) correctly
<matrix> may have leading and trailing whitespace
<input/> set attribute is unsigned. It is also optional, default 0
2021-07-13 16:50:09 +01:00
RichardTea 206b2436d4 Apply clangformat 2021-07-13 16:47:31 +01:00
Kim Kulling 15bbab2d9e
Merge branch 'master' into PLY_RN_LINE 2021-07-12 10:53:00 +02:00
Rahul Sheth 1b37b74f9e Hunter fixes for stb_image 2021-07-07 17:01:19 -04:00
Rahul Sheth 0a5e49252d Merge remote-tracking branch 'origin/master' into HEAD 2021-07-07 16:35:29 -04:00
Promit Roy 90c115cb3f
Merge branch 'master' into promit/gltf-extras 2021-07-02 00:38:00 -04:00
Kim Kulling 240eb36980
Merge branch 'master' into master 2021-07-01 19:23:52 +02:00
arkeon 3cbd31900c Manage /R/N lines ends correctly on binary files, tested with solidworks PLY export 2021-07-01 17:23:21 +02:00
Kim Kulling 01930101c7
Merge branch 'master' into master 2021-06-29 20:45:09 +02:00
Kim Kulling 59ab791a47
Merge branch 'master' into clang-tidy-perf-fixes 2021-06-29 20:24:23 +02:00
Promit Roy 7c822f23bd Added support for custom properties ("extras") in glTF2 2021-06-27 00:53:40 -04:00
Jerome St-Louis e3d54860ec
Merge branch 'master' into master 2021-06-25 18:50:33 -04:00
Pankaj003 72075f984e
Merge branch 'master' into master 2021-06-25 19:48:12 +05:30
Jerome St-Louis 0e41efb050 glTF2: Improved support for AI_MATKEY_OPACITY
- Exporter: Writing opacity to pbrMetallicRoughness.baseColorFactor[3] even when alphaMode is set
- Importer: Setting AI_MATKEY_OPACITY from pbrMetallicRoughness.baseColorFactor[3]
2021-06-24 13:27:29 -04:00
Aaron Gokaslan f435ce8c2c
Merge branch 'master' into clang-tidy-perf-fixes 2021-06-24 11:54:56 -04:00
Kim Kulling b38b65ff49
Add const 2021-06-24 17:03:00 +02:00
Kim Kulling 012ce30577
Merge branch 'master' into zero 2021-06-24 17:00:43 +02:00
Kim Kulling d18d838812
Fix formatting 2021-06-24 16:18:11 +02:00
Aaron Gokaslan 8e3a159141
Merge branch 'master' into clang-tidy-perf-fixes 2021-06-23 10:10:28 -04:00
Pankaj Tyagi 6170c49155 Fixed:
1. FBX import is unable to read the texture UV rotation angle.
2. FBX export is unable to write the texture UV rotation angle.
2021-06-23 16:49:09 +05:30
Evangel63 e736538df3
Merge branch 'master' into master 2021-06-23 13:45:23 +10:00
Aaron Gokaslan 24d4be958d
Merge branch 'master' into clang-tidy-perf-fixes 2021-06-22 14:42:51 -04:00
Aaron Gokaslan 544148a626 Fix code insertion duplication 2021-06-22 14:28:46 -04:00
Kim Kulling 760953c834
Merge branch 'master' into clean_gltf_pbr_brdf 2021-06-22 20:10:03 +02:00
Kim Kulling 36815b014b
Update FBXExporter.h 2021-06-22 20:05:16 +02:00
Aaron Gokaslan b17c2f29e9 Replace noexcept with proper macro 2021-06-22 12:44:36 -04:00
Aaron Gokaslan 1650868701 Remove redundant include 2021-06-22 12:32:58 -04:00
Aaron Gokaslan 94c3abd841 Apply various performance fixes from clang-tidy 2021-06-22 12:27:15 -04:00
Kim Kulling 951d5158c5
Merge branch 'master' into patch-1 2021-06-22 09:42:30 +02:00
Kim Kulling 9512e9ac1e
Merge branch 'master' into safe 2021-06-21 17:53:17 +02:00
Andreas Buhr e27074594f
Replace swear words in IFCBoolean.cpp
Add a more gentle comment.
2021-06-16 18:58:41 +02:00
Hill Ma 148b8c66a8 glTF2: zero out extra space created by padding.
This makes resulting GLB deterministic.
2021-06-15 15:18:20 -07:00
RichardTea f412595887 Fix typo
Thank you clang!
2021-06-14 15:11:41 +01:00
RichardTea 985f3ee665 Fix glTFv2 texcoord/uv mapping
Use the standard property to indicate the UV map index
2021-06-14 15:11:41 +01:00
RichardTea fb039bb9eb Add glTFv2 Clearcoat import/export tests
Uses Clearcoat model from Khronos
2021-06-14 15:11:41 +01:00
RichardTea 4a66ec25d0 Standardise Clearcoat, Sheen and Transmission
Also cleanup glTFv2 defaults, don't import/export if disabled
2021-06-14 15:11:41 +01:00
RichardTea 4476352882 First pass at simplifying glTFv2 PBR
Removed 'core' set of GLTF-specific properties
2021-06-14 15:11:41 +01:00
Evangel 3de20af3cc Renamed glTF2::Object::extensions to customExtensions to avoid shadowing in other subclasses. 2021-06-12 13:16:53 +10:00
Evangel a7a30baf27 Renamed local variable to avoid shadowing member variable. 2021-06-12 13:08:14 +10:00
Evangel 7f0efa0866 Added ReadExtensions to glTF2::Object, so all objects now have their extensions read.
Importer is the only place that needs to be modified to make them available on the Assimp side now.
2021-06-12 12:50:44 +10:00
Evangel 5be2330fbb Added CustomExtension to glTF2::Object so that all subclasses have it instead of doing it piecemeal. 2021-06-12 12:20:40 +10:00
Evangel 6d413444b5 Merge branch 'master' of https://github.com/Evangel63/assimp 2021-06-12 11:46:20 +10:00
Evangel 36c8cdf3de Add scene metadata for glTF2 files as allowed by the glTF2 specification. 2021-06-12 11:44:28 +10:00
Kim Kulling 6db142ee51 Merge branch 'x3d_pugi_migration' of https://github.com/assimp/assimp into x3d_pugi_migration 2021-06-10 23:36:47 +02:00
Kim Kulling ebb9b1b2af Next iteration 2021-06-10 23:36:07 +02:00
Kim Kulling 391d3195df
Merge branch 'master' into fbx-lights-export 2021-06-10 12:27:14 +02:00
Hill Ma ef739c1703 glTF2: Make handling of embedded textures safer.
Previous code does not check whether the embedded texture exists.
2021-06-08 12:53:18 -07:00
Kim Kulling a8ddc74426
Merge branch 'master' into fix-fbx-exporter2 2021-06-07 18:26:59 +02:00
Kim Kulling d33cf1dc0c
Merge branch 'master' into x3d_pugi_migration 2021-06-06 16:06:08 +02:00
Kim Kulling e0d1a36523
Merge branch 'master' into stb-image-updated 2021-06-03 23:07:38 +02:00
Kim Kulling d600b45cd2 Merge branch 'x3d_pugi_migration' of https://github.com/assimp/assimp into x3d_pugi_migration 2021-06-03 22:21:10 +02:00
Kim Kulling 3a32612b71 Add skipping of unused nodes. 2021-06-03 20:55:31 +02:00
Kim Kulling c8510a1a82
Merge branch 'master' into fix-fbx-exporter2 2021-06-03 11:05:07 +02:00
Kim Kulling 77ce4080b6 fix viewer in case of unknown primitives. 2021-05-30 21:54:04 +02:00
Garux 3b565444c3 Merge branch 'Q1MDLgroup' of https://github.com/Garux/assimp into Q1MDLgroup 2021-05-30 11:55:45 +03:00
Garux c776924adf fix -Waddress-of-packed-member 2021-05-30 11:45:50 +03:00
Kim Kulling 09bb79c68a
Merge branch 'master' into issue_3711 2021-05-29 08:39:18 +02:00
Matthias Möller 7534b149cf fix non skipped CR in header parsing 2021-05-28 15:28:35 +02:00
Kim Kulling 70cc1630fa
Merge branch 'master' into fix-gcc4.9-compilation 2021-05-27 15:25:01 +02:00
Kim Kulling b59db55b8c
Merge branch 'master' into less-string-bloat 2021-05-26 12:14:08 +02:00
Kim Kulling 6b8a00dfa1
Merge branch 'master' into wangyi_basisu 2021-05-25 17:17:07 +02:00
Kim Kulling b5e54e4d3b
Merge branch 'master' into wangyi_basisu 2021-05-25 16:17:29 +02:00
Kim Kulling faeae27923
Merge branch 'master' into importer_fixes_followup 2021-05-25 16:15:09 +02:00
Jean-François Verdon f13515a391 Adding basic support for lights in FBX exporter 2021-05-23 19:12:21 +02:00
Jean-François Verdon 6c104e096e
Merge branch 'master' into fix-gcc4.9-compilation 2021-05-23 19:06:28 +02:00
Kim Kulling aeaa22cbbd
Merge branch 'master' into UVStreamNames 2021-05-23 14:37:28 +02:00
Kim Kulling ac54fe41e2
Merge branch 'master' into PBRsupport 2021-05-23 13:23:06 +02:00
Jagoon f96e3cde2d Fix transform chain is applied twice 2021-05-23 00:06:05 +09:00
Jean-François Verdon b7b3c6db7e Fixing GCC 4.9 compilation issues 2021-05-22 16:57:07 +02:00
Jagoon 28e34878cb Fix fbx exporter bug if root node contains meshes. 2021-05-22 23:20:34 +09:00
Kim Kulling ee85ebbd00
Merge branch 'master' into md3Tuning 2021-05-20 20:25:30 +02:00
Kim Kulling 4f801a104e
Merge branch 'master' into fix-sib-string-waste 2021-05-20 19:58:11 +02:00
Kim Kulling 3fa45e6a8c Merge branch 'master' into sml_doc 2021-05-18 21:18:02 +02:00
Kim Kulling e01a6b4276 Add xml doc. 2021-05-18 21:15:48 +02:00
Malcolm Tyrrell 54a27f4514
Merge branch 'master' into MalcolmTyrrell/loggingImprovements 2021-05-17 13:32:02 +01:00
Malcolm Tyrrell 6e4b9d267b Remove TODO. Typo fix. 2021-05-17 10:29:06 +01:00
Malcolm Tyrrell 4ec01cfdcd Improve use of logging 2021-05-13 12:05:31 +01:00
Kim Kulling 22340469f4
Merge branch 'master' into jc3-dnase 2021-05-13 11:51:42 +02:00
Malcolm Tyrrell ad6f300b1d Other LogAux functions 2021-05-13 10:43:28 +01:00
Malcolm Tyrrell 7abfd134b6 LogAux warn 2021-05-13 10:33:16 +01:00
Malcolm Tyrrell 5cd3bdd5c2 No need to distinguish formatting log functions. 2021-05-13 10:25:27 +01:00
Malcolm Tyrrell 78145f1425 log verboseDebug 2021-05-13 10:08:59 +01:00
Malcolm Tyrrell 89584c167a Log debug 2021-05-13 09:56:42 +01:00
Kim Kulling b70f195805
Merge branch 'master' into M3DasciiByDefault 2021-05-12 15:31:01 +02:00
Malcolm Tyrrell 58bc4bcb63 log info 2021-05-12 12:55:21 +01:00
Malcolm Tyrrell 813d0aecdd Adjust warn 2021-05-12 12:43:24 +01:00
Kim Kulling 7a3c8e5504
Merge branch 'master' into md2orient 2021-05-12 13:07:27 +02:00
Kim Kulling f127144f71
Merge branch 'master' into c4d-cineware 2021-05-12 10:57:17 +02:00
Kim Kulling 8013c5011c
Merge branch 'master' into hl1mdlOrient 2021-05-12 08:21:40 +02:00
Kim Kulling ad4ca71e4c
Merge branch 'master' into jc3-dnase 2021-05-12 00:56:46 +02:00
Jason C 75af93aaa4
Merge branch 'master' into patch-2 2021-05-11 12:12:07 -04:00
Kim Kulling 4ee2f5f69d
Merge branch 'master' into aseHack 2021-05-11 11:40:24 +02:00
Jason C 00b625a2ae [amf] Fix crash when file could not be parsed.
Fix double free of mXmlParser (deleted but not reset in ParseFile, then deleted again in ~AMFImporter).

Should probably use a smart pointer instead, though.

---

This change was previously made in 785cca1bb4, as part of PR #3890, but was lost in a merge.
2021-05-10 19:06:39 -04:00
Kim Kulling cb7d3ac598
Merge branch 'master' into jc3-spam-killa 2021-05-10 22:21:13 +02:00
Kim Kulling e1a0e16a4e
Merge branch 'master' into jc3-importer-open-error-handling 2021-05-10 22:07:25 +02:00
Kim Kulling 4807853f09
Merge branch 'master' into mdcOrient 2021-05-10 21:06:15 +02:00
Kim Kulling 433620350e
Merge branch 'master' into stb-image-updated 2021-05-10 11:30:45 +02:00
Jason C f87b180147
Merge branch 'master' into jc3-importer-open-error-handling 2021-05-09 17:02:04 -04:00
Kim Kulling b30cbcf117
Merge branch 'master' into jc3-spam-killa 2021-05-09 21:47:17 +02:00
Jason C 0f85990fe3
Merge branch 'master' into jc3-importer-open-error-handling 2021-05-09 14:42:17 -04:00
Jason C 5cc05c26a7
Merge branch 'master' into jc3-spam-killa 2021-05-09 14:41:39 -04:00
Kim Kulling 319770db9d
Merge branch 'master' into jc3-cctype-fixes 2021-05-09 20:37:21 +02:00
ywang a19b708144 support both ktx and ktx2 2021-05-07 16:27:23 -07:00
Jason C 9a2a0384f4 Merge branch 'master' into patch-3 2021-05-07 17:53:18 -04:00
Jason C 279e9a186f
Merge branch 'master' into jc3-dnase 2021-05-07 14:49:22 -04:00
Jason C 6eb15080ec
Merge branch 'master' into jc3-importer-open-error-handling 2021-05-07 14:49:00 -04:00
Jason C 2fd6102573
Merge branch 'master' into jc3-spam-killa 2021-05-07 14:48:24 -04:00
Jason C 7b404788a6
Merge branch 'master' into jc3-cctype-fixes 2021-05-07 14:48:01 -04:00
Kim Kulling 25a0eb0d67
Merge branch 'master' into mdcOrient 2021-05-07 13:03:08 +02:00
Kim Kulling 8cae8c5461
Fix static code analysis findings 2021-05-07 11:52:16 +02:00
Kim Kulling 56bfa1ce5c
Make constructros with one arg explicit 2021-05-07 11:36:21 +02:00
ywang 2b9d88c943 support basis universal 2021-05-06 15:10:06 -07:00
Kim Kulling 350f2ea1d3 Fix build and merged master. 2021-05-06 21:36:25 +02:00
Kim Kulling 52228a93f8 Fix X3DGeohelper. 2021-05-06 21:07:38 +02:00
Kim Kulling bc7551b778
Merge branch 'master' into add-step-extension 2021-05-06 14:19:53 +02:00
Jason C 7da9c42c81 [blender] Disable creation of "dna.txt"
Developers who want to enable it can either:

- *Temporarily* set ASSIMP_BUILD_BLENDER_DEBUG_DNA=1 in BlenderDNA.h, or
- *Temporarily* define ASSIMP_BUILD_BLENDER_DEBUG_DNA=1 on the build command line.

Addresses #3886.
2021-05-05 19:30:29 -04:00
Jason C c08ad2e5c2
Merge branch 'master' into jc3-cctype-fixes 2021-05-05 19:04:47 -04:00
Jason C de5c8ece6f [xgl] Fail if file could not be parsed.
Fail instead of returning empty scene.

Partially addresses #3888.

TODO: Propagate XML error detail through exception (depends on #3881).
2021-05-05 17:49:10 -04:00
Jason C 98f586c8d4 [irr] Fail if file could not be parsed.
Fail instead of returning empty scene.

Partially addresses #3888.

TODO: Propagate XML error detail through exception (depends on #3881).
2021-05-05 17:48:44 -04:00
Jason C 470913bf27 [assbin] Fail if file could not be opened
Fail instead of returning empty scene.

Partially addresses #3888.
2021-05-05 17:46:24 -04:00
Jason C 0d3e8b52be [sib] Fix assertion failure when file could not be opened.
Check result of IOSystem::Open before constructing stream.

Partially addresses #3888.
2021-05-05 17:32:10 -04:00
Jason C a80b3b25eb [quick3d] Fix assertion failure when file could not be opened.
Check result of IOSystem::Open before constructing stream.

Partially addresses #3888.
2021-05-05 17:31:50 -04:00
Jason C e52c297284 [nendo] Fix assertion failure when file could not be opened.
Check result of IOSystem::Open before constructing stream.

Partially addresses #3888.
2021-05-05 17:31:24 -04:00
Jason C 1cd3752ec6 [ms3d] Fix assertion failure when file could not be opened.
Check result of IOSystem::Open before constructing stream.

Partially addresses #3888.
2021-05-05 17:31:06 -04:00
Jason C 7f13387487 [cob] Fix assertion failure when file could not be opened.
Check result of IOSystem::Open before constructing stream.

Partially addresses #3888.
2021-05-05 17:30:29 -04:00
Jason C 116ebf6e10 [3ds] Fix assertion failure when file could not be opened
Check result of IOSystem::Open before constructing stream.

Partially addresses #3888.
2021-05-05 17:30:05 -04:00
Krishty 816da9b677 merge and update all copies of stb_image.h 2021-05-05 23:15:41 +02:00
Jason C 785cca1bb4 [amf] Fix crash when file could not be parsed.
Fix double free of mXmlParser (deleted but not reset in ParseFile, then deleted again in ~AMFImporter).

Should probably use a smart pointer instead, though.

Partially addresses https://github.com/assimp/assimp/issues/3888.
2021-05-05 17:13:10 -04:00
Jason C f5a31b70f5
Merge branch 'master' into patch-3 2021-05-05 16:24:46 -04:00
Kim Kulling 992f10e7bf
Merge branch 'master' into remove-useless-scaling-prototype 2021-05-05 21:54:31 +02:00
Jason C 7ae8a52d9f
Merge branch 'master' into jc3-spam-killa 2021-05-05 10:33:29 -04:00
Kim Kulling b82d9f4bc7
Merge branch 'master' into new-file-detection 2021-05-05 15:59:25 +02:00
Kim Kulling 5325b327c3
Merge branch 'master' into optimize_3mf_strings 2021-05-05 15:12:06 +02:00
Max Vollmer (Microsoft Havok) 153b890b02 Prevent accessing nullpointers 2021-05-05 14:09:43 +01:00
Krishty b546dfccc7 fix for 0f3e6e2941
Visual Studio’s Search All Files ignores ObjFileImporter.cpp and now I’m sure that’s a bug
2021-05-05 13:14:25 +02:00
kkulling f15dcfa981 - Fix model parsing 2021-05-05 13:10:52 +02:00
kkulling cbce6d3dad Merge branch 'optimize_3mf_strings' of https://github.com/assimp/assimp into optimize_3mf_strings 2021-05-05 10:46:54 +02:00
Jason C ccd1a4455e [ply] Fix minor typo in error message. 2021-05-04 21:57:00 -04:00
Jason C a03dc4edaa [amf] Fix minor typo in error message.
Added missing space to detail string on parse failure.
2021-05-04 21:56:49 -04:00
Jason C f8609c2c2d [opengex] Direct OpenDDLParser log messages to assimp logger
Also filter unprintable characters. Addresses second part of #3862.
2021-05-04 21:54:14 -04:00
Jason C 9a04f5d4b0 Fix garbage messages in SIB, MD2, and MDC loaders. 2021-05-04 21:53:16 -04:00
Jason C a9fb1e56ae Add ai_str_toprintable; fixed garbage messages in HMP, MDL, Q3D loaders.
- ai_str_toprintable: See docs in StringUtils.h.
- HMP, MDL, Q3D: In particular, newlines in binary data were complicating logging.
2021-05-04 20:33:16 -04:00
Jason C c8ad8c6017 [mmd] Remove stderr spam.
Removed stderr spam and cleaned up exception text.

Addresses #3865.
2021-05-04 20:33:16 -04:00
Krishty b79b84d34e Merge branch 'master' into new-file-detection 2021-05-05 00:09:42 +02:00
Krishty 0f3e6e2941 replaced std::size() with AI_COUNT_OF for pre-C++20 compilers 2021-05-05 00:08:54 +02:00
Jason C 2925592c64 [assimp] Make sure ctype calls use unsigned char.
Cast to unsigned char as required by C++ (see C++ **[cctype.cyn]** -> ISO C99 section 7.4, [see also](https://en.cppreference.com/w/cpp/string/byte/isspace)).

Addresses https://github.com/assimp/assimp/issues/3867 and then some.
2021-05-04 17:31:13 -04:00
Kim Kulling 072aee7cbe
Merge branch 'master' into add-step-extension 2021-05-04 22:35:21 +02:00
Krishty b57ce004f8 reduced FBX string bloat
The FBX importer used two std::strings where string literals would have been sufficient.
2021-05-04 22:01:01 +02:00
Krishty f3c18556d1 reduced OpenGEX string bloat
The OpenGEX importer defined a few global std::string constants, only to convert them back to C strings on use. This commit defines them as C strings from the beginning.

strncmp() was used to compare these strings to other strings, but the length limit was set to string length, which made it equivalent to strcmp(), just slower. Fixed that as well.
2021-05-04 22:01:01 +02:00
Krishty 7b6dab5e20 reduced DXF string bloat
The DXF importer defined a global std::string constant, only to convert it back to a C string on use.

This commit defines the constant as a C string right away, thus saving 340 B of code and data.
2021-05-04 22:01:00 +02:00
Krishty 2a126f9f62 reduced Ogre string bloat
The Ogre importer used std::string where a string literal would have been sufficient. Saves another 600 B of code and data.
2021-05-04 22:01:00 +02:00
Kim Kulling e85a69a960
Update D3MFImporter.cpp 2021-05-04 15:31:07 +02:00
vfxgordon 4231a86ad8
Merge branch 'master' into fbxBlendshapes 2021-05-04 06:22:22 -07:00
kimkulling 7690f92c81 Fix version of strnlen 2021-05-04 14:48:39 +02:00
kimkulling ee5170c18a - fix security issue 2021-05-04 14:40:25 +02:00
Kim Kulling 9c44c0ab2b
Merge branch 'master' into remove-useless-scaling-prototype 2021-05-04 13:02:00 +02:00
kimkulling 0e17939e8d Use const char* const 2021-05-04 12:09:38 +02:00
kkulling 55fd820ed7 use const chars 2021-05-04 10:57:30 +02:00
Tom spot Callaway f91b439f79 preserve UV Stream names in FBX files 2021-05-03 13:40:31 -04:00
Tom spot Callaway e7211790fb PBR material support 2021-05-03 13:27:52 -04:00
Krishty fe5a23e110 fixed bloat in SIB importer
The SIB importer, upon needing an empty aiString, did not create a new one but rather copied a predefined global empty string.
Since aiStrings contain large buffers, Assimp copied 1028 B of zeros instead of setting five bytes (at least when compiled with Visual C++). Since aiString is a user-defined type without a constexpr constructor, Visual C++ had to generate a thread-safe run-time initializer as well.
Now it’s just two instructions.
2021-05-03 17:01:59 +02:00
vfxgordon 9ae3e88f6c
Merge branch 'master' into fbxBlendshapes 2021-05-03 07:40:25 -07:00
Kim Kulling f29828f657
Merge branch 'master' into fix-file-detection 2021-05-02 19:41:33 +02:00
Kim Kulling e278673fe7
Merge branch 'master' into 3ds-namespace 2021-05-02 15:08:11 +02:00
Krishty e73a2ed5e0 style fix: namespace instead of class with public static members 2021-05-01 23:20:37 +02:00
Krishty 65a2b98b86 updated C4D importer to use the Cineware SDK
Maxon’s Melange SDK has been renamed Cineware SDK as of 21.004, and with it all namespaces and types. This commit
- makes CMake use contrib/Cineware instead of contrib/Melange;
- renames Assimp’s namespace melange to namespace cineware;
- removes useless functions and formatter references from class C4DImporter;
- removes duplicate conversion of cineware::String to aiString in the importer;
- updates comments accordingly;
- updates copyright info.
2021-05-01 18:46:23 +02:00
Jason C c2d3d22271
Fix crash in CanRead when file can not be opened.
Addresses #3849
2021-05-01 10:58:29 -04:00
Kim Kulling 78132d666f
Merge branch 'master' into fix-3ds-matrix 2021-05-01 11:34:33 +02:00
Garux eab1c9c3c0 add `AI_CONFIG_IMPORT_MD3_LOAD_SHADERS` bool option
the purpose is use of this loader with idtech3 FS
this requires full original material name, which euqals to Q3 shader path
result of deduction is not usable inside Q3 FS at all
option in general is "do not tinker with the path"
2021-05-01 08:14:44 +03:00
contriteobserver 813b64ef52 corrected M3D_EXP_NOFACE test 2021-04-30 21:51:02 -07:00
contriteobserver e51bb1e77e fixed signed/unsigned mismatch warning 2021-04-30 21:26:57 -07:00
contriteobserver 694f4c2e34 Merge branch 'master' into M3DasciiByDefault 2021-04-30 21:12:48 -07:00
contriteobserver af0aca796e now compiling M3D ASCII support by default
addresses issue  #3777
2021-04-30 21:07:01 -07:00
Garux 55abc49d6d improve md3::Q3 shader::cull keyword support
only use nonstandard winding order with `cull back`; might be excess too, since engine doesn't support this
2021-04-30 22:59:05 +03:00
Garux 0b7ebef497 fix path separator in md3 shader loading 2021-04-30 22:51:21 +03:00
Kim Kulling 2feda5b4b2
Merge branch 'master' into md2-mdc-const 2021-04-30 20:10:45 +02:00
Garux 149224091f support missing closing brace in material list after Ascii Scene Exporter v2.51 2021-04-30 10:37:06 +03:00
Kim Kulling 57091d761e
Merge branch 'master' into md2-mdc-const 2021-04-30 00:56:50 +02:00
Kim Kulling 0b92abe9b4
Merge branch 'master' into empty-string-style 2021-04-30 00:54:57 +02:00
vfxgordon 5298ed8f9e
Merge branch 'master' into fbxBlendshapes 2021-04-29 15:21:16 -07:00
Kim Kulling 73e05ab6d3
Merge branch 'master' into add-step-extension 2021-04-30 00:13:32 +02:00
Garux edf12bd357 fix md2 orientation 2021-04-30 00:02:37 +03:00
Krishty 666b5eff76 added .step extension to IFC loader
The extension .step is at least as common as .stp, so both should be supported.
2021-04-29 21:29:10 +02:00
Garux 4798ff3882 fix hl1 mdl orientation, tex coords, face windings order 2021-04-29 20:50:50 +03:00
Garux db142da571 orient mdc correctly 2021-04-29 20:41:10 +03:00
Kim Kulling 9a0b703db1
Merge branch 'master' into ms-maxvollmer/importer_fixes 2021-04-28 20:25:10 +02:00
Krishty 260cc6bd26 reverted regression in 3DS transformation (issue #3802)
The regression was introduced to align 3DS export and import, but in fact it broke the transformation matrices on import. This commit reverts the relevant lines. Furthermore, matrix layout was double-checked with two other 3DS importers. Export was not considered.
2021-04-28 01:02:24 +02:00
Jason C 3acd42c22e
Remove newline from name of Blender importer.
Addresses #3797.

Re-submitting this as a quick fix to the immediate issue while I think about the website field.
2021-04-26 20:27:28 -04:00
Gordon Chapman 64da2a4315 Merge remote-tracking branch 'upstream/master' into fbxBlendshapes 2021-04-26 13:51:22 -07:00
Gordon Chapman a5d0e99548 Fixed error in blendShapeChannel Weighting 2021-04-26 12:19:20 -07:00
Max Vollmer (Microsoft Havok) e1d6e1f377
Merge branch 'master' into ms-maxvollmer/importer_fixes 2021-04-26 14:53:32 +01:00
Krishty e6a47d93c2 removed dead code from 0d29203e24 2021-04-24 13:29:15 +02:00
Krishty 628cba9490 fixed warning 2021-04-24 00:44:50 +02:00
Krishty b00de10eb3 Simplified importer search and fixed a few bugs
The search for a matching importer had a few issues, see #3791. There were two different mechanisms to determine whether an importer accepts a specific file extension:
1. `aiImporterDesc::mFileExtensions`, which was forwarded to the UI via `BaseImporter::GetExtensionList()`.
2. `BaseImporter::CanRead()` when called with `checkSig == false`, which determines whether to actually use that importer.
Both were redundant and got out of sync repeatedly. I removed 2. completely and replaced it with 1., thereby syncing UI/import and shortening all `BaseImporter::CanRead()` implementations.

Further bugfixes:
- fixed glTF2 importer throwing exceptions when checking whether it can load a file
- removed `BaseImporter::SimpleExtensionCheck()` because it is no longer used and had a bug with case sensitivity

Since the `checkSig` parameter in `BaseImporter::CanRead()` is now useless, it can be removed completely. I’m not sure if this would break ABI compatiblity, so I’ll submit it with a later pull request.
2021-04-24 00:17:50 +02:00
Krishty 9dc66b0003 removed dead code
BaseImporter::GetExtensionList() is not a virtual function; overriding it is useless. This probably stemmed from a misunderstanding.
2021-04-23 15:15:21 +02:00
Krishty 196deea7ce added missing file extensions to aiImporterDesc::mFileExtensions 2021-04-23 15:05:09 +02:00
Kim Kulling 8881e65d62
Merge branch 'master' into strip-useless-gltf-write 2021-04-22 09:55:00 +02:00
Max Vollmer (Microsoft Havok) 746d5cf964 * Throw instead of assert on invalid file input
* Check JSON object type before accessing members
* Ensure samplers input and output references are set before accessing them
2021-04-21 16:17:03 +01:00
Krishty 55dd5faafb fixed export exceptions on import
Ogre and 3MF imports threw DeadlyExportErrors under some circumstances. Bad for people who assumed that they only needed to catch DeadlyImportErrors. Changed them to DeadlyImportErrors.
2021-04-19 19:33:41 +02:00
Krishty a19299d501 moved MD2/MDC tables from BSS to const data
Visual C++ is unable to identify them as constant data during optimization, so explicitly declare them const.
2021-04-17 00:32:04 +02:00
Krishty f761dc72f4 style fix - initializing and assigning empty std::string properly
std::string s(""); s = ""; calls the copy constructor, which in turn calls strlen(), … assigning a default-constructed string generates fewer instructions and is therefore preferred.

With C++11 uniform initialization, you’d simply write s = { } instead.
2021-04-16 23:43:56 +02:00
Krishty 6cbeca5518 fixed glTF export stuff being pulled into the EXE even if building with ASSIMP_BUILD_NO_EXPORT
“LazyDictBase::WriteObjects()” in the two glTF implementations is only used for export. Since it’s a virtual method, and many compilers have trouble removing unreferenced virtual methods, glTF export stuff is pulled into the binary even if compiling without exports.

This commit removes said virtual function if only compiling for import.

This removes 75 KiB of useless code when compiled with Visual Studio for x64.
2021-04-16 20:44:40 +02:00
Kim Kulling 21b56b0058
Merge branch 'master' into tr1 2021-04-14 12:46:59 +02:00
Kim Kulling 83c0dce075
Merge branch 'master' into Q1MDLgroup 2021-04-14 10:48:26 +02:00
Kim Kulling 0b61a8875a
Merge branch 'master' into patch-1 2021-04-14 10:22:42 +02:00
Hill Ma 4aa52b3af8 Flip the check on _MSC_VER for using TR1 containers. 2021-04-13 11:15:52 -07:00
Kim Kulling 263d450300
Merge branch 'master' into master 2021-04-12 09:35:03 +02:00
Kim Kulling a3ee377af7
Merge branch 'master' into ms3d-fixes 2021-04-11 19:12:06 +02:00
Kim Kulling cf4ef04a80
Merge branch 'master' into master 2021-04-07 20:58:40 +02:00
Clement JACOB e66232d8c3
Merge branch 'master' into feature/gltf_fb_ngon_encoding 2021-04-07 13:54:31 +02:00
Patrick Walton a44ba41413 Fix incorrect indices in the MilkShape 3D loader 2021-04-05 19:14:48 -07:00
Kim Kulling 7fee914776
Fix direct leak
closes https://github.com/assimp/assimp/issues/3747
2021-04-05 21:24:54 +02:00
Garux 856547be23 Fix Q1 MDL group frame loading, e.g. Q1 progs/flame2.mdl 2021-04-05 17:18:06 +03:00
Garux 437d7bf8b8
Fix MDC loader
placement new was clearing input buffer by constructor, which was nothing to do with adequate parsing
changes are not analyzed in depth, but at least test model and models of Wolf:ET are loading and not crashing
2021-04-05 16:39:41 +03:00
Kim Kulling 22413d85ad
Merge branch 'master' into MalcolmTyrrell/tangentCheck 2021-04-03 17:42:44 +02:00
Kim Kulling 80fc8538be
Update AMFImporter_Material.cpp 2021-04-03 10:29:16 +02:00
Kim Kulling d62c89557b
Remove dead code 2021-04-03 10:28:19 +02:00
Kim Kulling 46e49d0b83
Update AMFImporter_Geometry.cpp 2021-04-03 10:27:54 +02:00
Kim Kulling cdb6a62cdb
Merge branch 'master' into issue_3678 2021-04-03 10:27:07 +02:00
Kim Kulling da0543972b Fix parsing for AMF-Files. 2021-04-03 10:25:03 +02:00
Kim Kulling 89a8f87dae AMF: Remove unused macros 2021-04-02 13:10:24 +02:00
Clement Jacob 596001c89c Refactoring the extension 2021-03-30 09:10:50 +02:00
Clement Jacob 8e589221d7 [gltf2-exporter] Adding FB_ngon_encoding support 2021-03-30 09:10:50 +02:00
Kim Kulling f61a41bdd9
Merge branch 'master' into fbxBlendshapes 2021-03-29 21:48:51 +02:00
Bernold Kraft 09d3266250 Fixing 3DS import for CHUNK_TRMATRIX translation vector. 2021-03-29 15:31:08 +02:00
urschanselmann 5755530bab
Merge branch 'master' into master 2021-03-28 17:40:17 +02:00
Kim Kulling e5862c18be
Merge branch 'master' into fbxBlendshapes 2021-03-28 13:02:35 +02:00
Bernold Kraft 348c34811f Fixing CHUNK_TRMATRIX translation sub chunk
and therefore omitting the transform aggregation in the CHUNK_VERTLIST.
2021-03-26 22:21:45 +01:00
Gordon Chapman 3fd865b4bf Added Blendshape Support to FBX Export 2021-03-24 18:10:03 -07:00
Malcolm Tyrrell d94ddd32b1 Extra check. Better logging. 2021-03-24 11:04:39 +00:00
Malcolm Tyrrell add165c4a1 Check target sizes to avoid reading beyond allocation 2021-03-24 10:55:40 +00:00
urschanselmann 0a1efe5d58
Merge branch 'master' into master 2021-03-21 17:19:43 +01:00
urschanselmann 86c05a1154
Merge branch 'master' into master 2021-03-19 18:15:15 +01:00
Kim Kulling 5f652feb75
Merge branch 'master' into MalcolmTyrrell/gltfCrashes 2021-03-19 13:35:13 +01:00
Hill Ma 3e99385f44 Fix a memory leak in glTF2.
The destructor of LazyDict uses `delete` but `delete` was not used for objects removed by LazyDict::Remove.
2021-03-17 15:12:54 -07:00
Urs Hanselmann d9cd07f0d9 Merge branch 'master' of https://github.com/assimp/assimp 2021-03-17 18:26:11 +01:00
Malcolm Tyrrell 3503252e12 Strict check for accessor "count" 2021-03-16 11:47:19 +00:00
Malcolm Tyrrell e4983aa16e Fix code issue 2021-03-15 16:46:41 +00:00
Malcolm Tyrrell 57652a9084 Version is strictly a string 2021-03-15 16:27:50 +00:00
Malcolm Tyrrell 053c0f5e0a Catch type errors in gltf and try to print out useful context. 2021-03-15 13:06:11 +00:00
Kim Kulling 84cd1d95c7
Merge branch 'master' into FixClangCL 2021-03-12 15:26:49 +01:00
Urs Hanselmann c0c7e6a0de trim uvIndices to fix import of Cheetah3D generated fbx files 2021-03-12 14:48:38 +01:00
Urs Hanselmann cc7e229c3c disable size check 2021-03-12 08:55:11 +01:00
Kim Kulling 51ad88afb6
Merge branch 'master' into master 2021-03-10 20:35:37 +01:00
Kim Kulling 806b12dc8b
Merge branch 'master' into issue_3678 2021-03-10 19:51:04 +01:00
Kim Kulling 732e9386aa
Merge branch 'master' into master 2021-03-10 11:49:13 +01:00
Kim Kulling 6c89631581 closes https://github.com/assimp/assimp/issues/3678: ensure lowercase 2021-03-09 21:08:28 +01:00
Minmin Gong c6c0f141f1 Fix compiling issues in clang-cl 2021-03-03 22:30:36 -08:00
Kim Kulling ff769ecce2
Merge branch 'master' into sparse_minmax 2021-03-02 12:30:01 +01:00
Kim Kulling 75210576cf
Merge branch 'master' into sparse_minmax 2021-03-01 21:34:24 +01:00
contriteobserver 111752cff0 workaround for ASSIMP_DOUBLE_PRECISION compile errors
changed float types to ai_real types as needed

addresses issue #3682
2021-02-28 14:45:39 -08:00
Kim Kulling c669c8f1eb
Merge branch 'master' into update_copyrights 2021-02-28 12:18:41 +01:00
Kim Kulling 9e8dbd0ca5 Update copyrights to 2021. 2021-02-28 12:17:54 +01:00
Kim Kulling 5b78e3fb5d
Merge branch 'master' into user/mavollme/GLTF2_CheckNormalCount 2021-02-25 21:29:03 +01:00
Max Vollmer (Microsoft Havok) eef03c1f17 Improved warnings 2021-02-24 14:28:18 +00:00
Max Vollmer (Microsoft Havok) facb7da701 Check that normal count and tangent count matches vertex count. Ignore data and warn if counts don't match. 2021-02-24 14:19:29 +00:00
Turo Lamminen 3e1c785d31 [3MF] Silence uninitialized variable warning
This is a false positive but the compiler can't see it
2021-02-24 10:59:59 +02:00
thomasbiang 5429475339
Merge branch 'master' into sparse_minmax 2021-02-23 12:30:53 -08:00
ywang 72efb4354a Merge branch 'master' of https://github.com/thomasbiang/assimp into sparse_minmax 2021-02-23 12:12:36 -08:00
Kim Kulling 247fd0ce17
Merge branch 'master' into FixAnimName 2021-02-22 20:38:16 +01:00
Kim Kulling 616d924d29
Merge branch 'master' into master 2021-02-20 19:35:31 +01:00
Kim Kulling 6094da3493
Update glTF2Asset.inl 2021-02-18 09:32:37 +01:00
Minmin Gong d57b78bc98 Export the animation name to gltf2 2021-02-16 20:22:08 -08:00
RichardTea f1d225c18d
Merge branch 'master' into issue_2195_draco 2021-02-15 18:05:22 +00:00
Kim Kulling 047b45d172
Fix apha value
- The alpha value in materials using the Tr format must be inverted
- closes https://github.com/assimp/assimp/issues/3645
2021-02-15 11:51:20 +01:00
Guangmo Lin ba7f945f99 Eliminate MSVC warning C4819 caused by source files encoded in UTF-8 without BOM 2021-02-14 10:28:14 +08:00
Kim Kulling 426c1a340f
Merge branch 'master' into issue_2195_draco 2021-02-10 15:28:39 +01:00
Guangmo Lin 2d4bc2d04e Eliminate maybe-uninitialized warnings which are treated as errors when use -DCMAKE_BUILD_TYPE=Release 2021-02-09 14:10:44 +08:00
Kim Kulling c9ca921d09
Merge branch 'master' into ColladaAnimationFix 2021-02-08 20:46:18 +01:00
Kim Kulling 888415246e
Merge branch 'master' into issue_2195_draco 2021-02-08 11:52:54 +01:00
Gargaj 8ae8b165ca
fix compile warning-turned-error on x86 2021-02-08 00:37:06 +01:00
Kim Kulling cb15a0d8b0
Merge branch 'master' into ColladaAnimationFix 2021-02-07 17:45:10 +01:00
Kim Kulling 6c3593eda0
Merge branch 'master' into master 2021-02-06 09:54:51 +01:00
ywang 9bab475302 export min max for sparse accessor 2021-02-03 15:05:58 -08:00
Kim Kulling bb21ec9423
trigger build 2021-02-03 21:17:57 +01:00
Kim Kulling 2391432523 fix overflow 2021-02-03 21:07:28 +01:00
Kim Kulling e6b8ae44cb Fix unittests: skip newline at begin of matrix token. 2021-02-03 20:54:48 +01:00
xiaohunqupo c43a1ed886
Fix Step Expoter Error.
Fix Step Expoter Error.
2021-02-03 16:26:02 +08:00
thomasbiang d08acb85e7
Merge branch 'master' into master 2021-02-02 14:48:41 -08:00
Kim Kulling faf53b8e0f Fix broken autocorrect fix 2021-02-02 23:33:02 +01:00
Kim Kulling 6ee1a32fb2 fix compile issue: replace std::make_unique 2021-02-02 22:54:20 +01:00
Kim Kulling 50fd5127ef Some review findings. 2021-02-02 22:34:30 +01:00
ywang 793bd44cee fix issue: 3482: invalid gltf2 properties 2021-02-02 13:19:57 -08:00
Kim Kulling fa2354ebc3 Fix incorrect xml-parsing in collada importer. 2021-02-02 22:06:33 +01:00
contriteobserver 65bc86e181
Merge branch 'master' into ColladaAnimationFix 2021-02-01 16:58:01 -08:00
Kim Kulling 5fbbba2fac
Merge branch 'master' into issue_2195_draco 2021-01-31 16:02:57 +01:00
Kim Kulling f2543ee608
Merge branch 'master' into ColladaSubmeshFix 2021-01-29 22:11:07 +01:00
Kim Kulling 8d4b816dfe
Merge branch 'master' into master 2021-01-29 18:16:04 +01:00
contriteobserver e33b69a428 Collada importer now identifies animations
addresses issue #3584
2021-01-28 13:06:02 -08:00
Kim Kulling 706d636c63
Merge branch 'master' into master 2021-01-28 18:25:39 +01:00
RichardTea 48bcbbefdd use nullptr and float constants 2021-01-27 10:56:57 +00:00
RichardTea 150514fc8b Move draco warning suppression
Should be around the include for portability, not template instantiation
Fix clang pragma typos
2021-01-27 10:42:28 +00:00
RichardTea 5e7281dac6
Merge branch 'master' into issue_2195_draco 2021-01-27 10:26:16 +00:00
RichardTea 6ec32b6b78 Apply clangformat 2021-01-27 09:55:03 +00:00
RichardTea c6fd1ce996 glTF2 Minor cleanup 2021-01-27 09:42:49 +00:00
RichardTea 5b9d06c2fc Disable draco clang/gcc warnings via pragma
draco templated functions also throw warnings
2021-01-27 09:19:35 +00:00
Kim Kulling 1e38f84c3a
fix typo 2021-01-27 09:40:19 +01:00
Kim Kulling ac0f1f2cab
Update FBXMaterial.cpp 2021-01-27 09:37:35 +01:00
Kim Kulling c02ad323a5
Fix VS compiler warning: convertig int to char 2021-01-27 09:22:59 +01:00
thomasbiang 4ed9f3c2f4
Merge branch 'master' into master 2021-01-26 13:55:40 -08:00
Kim Kulling 4471c36c08
Fix compiler bug for VS2019
- Check https://developercommunity.visualstudio.com/content/problem/1223143/visual-studio-2019-c-program-crash-with-stdstring.html for more details
- closes https://github.com/assimp/assimp/issues/3572
2021-01-26 20:59:21 +01:00
RichardTea d79e0c0ba9 Avoid std::make_unique
Assimp is still C++11
2021-01-26 17:33:10 +00:00
RichardTea c917e6513f
Merge branch 'master' into issue_2195_draco 2021-01-26 16:43:46 +00:00
RichardTea f39ba8ddb2 Add compile error for bad error draco config
KHR_draco_mesh_compression requires
DRACO_MESH_COMPRESSION_SUPPORTED
2021-01-26 16:24:18 +00:00
RichardTea dde7605158 Implement draco decoding 2021-01-26 16:08:12 +00:00
contriteobserver d7bf513250 renaming iterator to avoid any possibility of scop collisions 2021-01-26 01:36:12 -08:00
contriteobserver 69fc809307 size_t is not the same as unsigned int on some systems 2021-01-26 01:01:59 -08:00
contriteobserver f92a34e0b7 Merge branch 'master' into ColladaSubmeshFix 2021-01-26 00:38:37 -08:00
Kim Kulling 243d017463
Add missing skip
- closes https://github.com/assimp/assimp/issues/3601
- Fix some format issues
2021-01-24 18:47:50 +01:00
Kim Kulling a2b889ab09
Fix typo in collada parser
closes https://github.com/assimp/assimp/issues/3599
2021-01-24 18:21:46 +01:00
Ville Voutilainen 6ebae5e67c GCC 11 build fixes 2021-01-24 11:04:46 +02:00
contriteobserver 338abded12 ColladaLoader now assigns individual materials to submeshes as needed
Optional assignment of individual materials to submeshes, addresses #3606
2021-01-23 02:20:58 -08:00
thomasbiang 91dc904ed1
Merge branch 'master' into master 2021-01-22 13:25:31 -08:00
Kim Kulling e792455d66
Remove redundant statement in if
- closes https://github.com/assimp/assimp/issues/3180
2021-01-22 14:22:34 +01:00
Kim Kulling dc4514de82
Update COBLoader.cpp
Fix cppcheck finding
2021-01-22 13:23:39 +01:00
Kim Kulling 0dcd72d420
Update IFCOpenings.cpp 2021-01-22 13:18:43 +01:00
Kim Kulling f44572157a
Update 3DSLoader.cpp 2021-01-22 13:14:59 +01:00
Kim Kulling f2d3f0dbe6
Merge branch 'master' into master 2021-01-22 12:35:44 +01:00
Kim Kulling 2bcf08370d
Merge branch 'master' into fix-gltf-vertex-colors 2021-01-21 11:54:02 +01:00
thomasbiang d7cf7847ba
Merge branch 'master' into master 2021-01-20 18:47:39 -08:00
ywang 01e61c8b9f customized node transformation format 2021-01-20 18:42:56 -08:00
xiaohunqupo 8ba1d38dea
Fix STL Expoter error. 2021-01-20 16:29:30 +08:00
Maki 6d13fd6aa2 Fix glTF vertex colors with types other than float 2021-01-15 02:56:45 +00:00
Kim Kulling a9705e346a
Merge branch 'master' into ihsinme-patch-210 2021-01-14 17:21:44 +01:00
Kim Kulling 87a6305cf0
Merge branch 'master' into gltf2_buffer_fixes 2021-01-12 18:32:17 +01:00
ihsinme 070072370d
Update AMFImporter_Material.cpp 2021-01-12 15:43:40 +03:00
ihsinme 2e96366d04
Update AMFImporter_Geometry.cpp 2021-01-12 15:40:19 +03:00
kkulling 9174bca3f7 closes https://github.com/assimp/assimp/issues/3517: use const instead of constexpr 2021-01-12 10:01:53 +01:00
Max Vollmer d49aed4585 * Check that buffer view has buffer
* Handle integer overflow when calculating byte length
* Minor code cleanup for exception messages
2021-01-11 08:45:47 +00:00
Kim Kulling cf78781fa8
Merge branch 'master' into 3mf-improvements 2021-01-02 13:14:13 +01:00
Danny-Kint 07aace0fdd
Merge branch 'master' into dev/gltf-KHR_materials 2020-12-31 07:08:31 +01:00
Kim Kulling 465220b26a
Merge branch 'master' into 3mf-improvements 2020-12-30 18:12:26 +01:00
Kim Kulling e0803b3ec2
Merge branch 'master' into fix-gltf-bin-from-memory 2020-12-30 11:17:31 +01:00
Danny-Kint b8d947299a
Merge branch 'master' into dev/gltf-KHR_materials 2020-12-29 17:09:15 +01:00
Jean-Louis 37df38f951 [3MF] Improves node naming 2020-12-29 15:46:28 +01:00
Jean-Louis 4025c57fd0 [3MF] Parse the transform of the components 2020-12-28 15:47:20 +01:00
Jean-Louis eda967bd02 Parse the <build> node + refactoring 2020-12-28 12:31:54 +01:00
Danny-Kint 07b59f539d
Merge branch 'master' into dev/gltf-KHR_materials 2020-12-28 08:48:54 +01:00
Maki ca653e0c6a Fix glTF from memory loading .bin with a custom IOHandler 2020-12-28 07:18:50 +00:00
Jean-Louis eed75aaf2c Remove debug print 2020-12-26 14:57:52 +01:00
Jean-Louis 0ec8d6e285 [3MF] Missing file in previous commit + parse object material in the importer 2020-12-26 14:04:45 +01:00
Jean-Louis 0952038461 Small refactoring on 3MF export 2020-12-26 03:02:18 +01:00
Jean-Louis c10d592b79 Fix material parsing in the 3MF importer 2020-12-26 02:36:24 +01:00
Kim Kulling 77f9c2854a
Merge branch 'master' into fbx_tokenizer_fix 2020-12-25 21:44:26 +01:00
Kim Kulling 3f5238d7c1
Merge branch 'master' into gltf2_fixes 2020-12-24 16:48:36 +01:00
Danny-Kint dbffe25c9d
Merge branch 'master' into dev/gltf-KHR_materials 2020-12-23 11:33:04 +01:00
Danny Kabrane 383c97e380 Add KHR_materials_transmission during export 2020-12-23 10:43:21 +01:00
Danny Kabrane 2b097c1e73 Add KHR_materials_transmission during import 2020-12-23 10:43:01 +01:00
Danny Kabrane 197bf1e617 Add KHR_materials_clearcoat during export 2020-12-23 09:56:15 +01:00
Danny Kabrane f8c63d874b support KHR_materials_clearcoat during import 2020-12-23 08:12:09 +01:00
Kim Kulling 50f9fb28b6
Merge branch 'master' into fix-casting-mingw 2020-12-21 18:29:18 +01:00
Danny Kabrane aa9d6ce7b7 add support for khr_materials_sheen during export 2020-12-21 14:34:16 +01:00
Danny Kabrane 0fdda99ea1 add underscore (MATERIAL_SHEEN instead of MATERIALSHEEN) 2020-12-21 14:33:35 +01:00
Danny Kabrane 63b0a97369 import KHR_materials_sheen 2020-12-20 07:59:12 +01:00
Kim Kulling 981923821a
Merge branch 'master' into gltf2-exporter-crash 2020-12-18 16:27:06 +01:00
Inho Lee b8bf1eac04 FBXConverter : Fix timescales of FBX animations
FBX animations were recorded by framenumber, not by time.
This patch will change it as a base of milliseconds.
2020-12-16 15:02:46 +01:00
Max Vollmer a15adc9fbc Fixed copypaste error 2020-12-14 17:01:42 +00:00
Max Vollmer 9d3c0081eb Throw if property length is out of bounds 2020-12-14 16:49:04 +00:00
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 922f874e78 Merge branch 'gltf2-exporter-crash' of https://github.com/JLouis-B/assimp into gltf2-exporter-crash 2020-12-13 17:03:09 +01: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 33e7e2366c
Merge branch 'master' into gltf2-exporter-crash 2020-12-13 16:48:40 +01:00
Biswapriyo Nath c65f2cb3fb Remove extra semicolon while GCC being pedantic. 2020-12-13 00:12:44 +05:30
Kim Kulling 7dd0596010
Merge branch 'master' into 3dsMax2021PbrMaterials 2020-12-11 14:31:00 +01:00
Kim Kulling a2adef8726
Merge branch 'master' into add-msvc-check 2020-12-11 14:11:10 +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
Kim Kulling c0d7ea981a
Merge branch 'master' into gltf_fixes 2020-12-04 16:02:16 +01:00
Malcolm Tyrrell 471d2acc92 Improvements & style 2020-12-03 11:17:45 +00:00
Malcolm Tyrrell 19af3f0d31 Swap the meaning using the out_mat property. 2020-12-02 16:59:29 +00:00
Biswapriyo Nath 8d8ba521e2 Check _MSC_VER for MSVC specific pragma directives.
This fixes build issues when compiled with compiles like Clang or GCC.
2020-12-02 02:05:14 +05:30
Malcolm Tyrrell f7be3048de New 3ds Max PBR Materials in FBX 2020-12-01 12:05:42 +00: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 53ff0702ce Fixed check for base64 char values 2020-11-30 16:21:29 +00: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 88be8ec698
Merge branch 'master' into fbxExceptionSafety 2020-11-27 21:49:58 +01:00