Commit Graph

3916 Commits (9147fb8689c2b23f3ce6886ed808d44bc63011bc)

Author SHA1 Message Date
Malcolm Tyrrell 02a5f6b62f Remove unneeded newline. 2019-02-06 11:15:27 +00:00
Malcolm Tyrrell f9014d7410 Add tokenization of 'c' type arrays, both compressed and uncompressed. 2019-02-06 11:15:21 +00:00
Kim Kulling 6e39c22554 Fix potential security issues. 2019-02-05 22:05:52 +01:00
Mike Samsonov 5ce1cfedfe warning fix for gcc 2019-02-04 16:15:52 +00:00
Mike Samsonov 971ba308b3 Merged PR 2811682: buffer grow changes and large files support
Buffer grow changes:
The exporting of relatevely large data could take a few days, because reallocation of a buffer every time for a few new bytes is overkill. I've introduced standard capacity member for the buffer and growth it by 1.5 times every time. That helps a lot, descrease exporting to a minute (from a few days).

Large file support:
glTF is a json file, all lengths and offsets don't have a type, just numbers, but code was always reading it as uint32, this doesn't work for files bigger than int32 (almost all files we have as an example). So, I've changed it to be reading as size_t. Specification doesn't specify the type for it, so it's not against spec.
2019-02-04 15:16:28 +00:00
Kim Kulling 0801a62ef7
Merge branch 'master' into kimkulling-dev 2019-01-30 16:09:33 +01:00
kimkulling a06133ab52 Update copyrights. 2019-01-30 09:41:39 +01:00
FRICOTEAUX 38bebaf4d3 Fix glTF2 export with no texture coordinates 2019-01-28 16:02:09 +01:00
Kim Kulling b35331b92a
Update FindInvalidDataProcess.cpp
-Fix some review findings.
2019-01-28 10:50:36 +01:00
Kim Kulling 4c2898c82b
Merge branch 'master' into issue_2251 2019-01-28 10:06:44 +01:00
Kim Kulling 5d6fc7a557 Closes https://github.com/assimp/assimp/issues/2251: introduce AI_CONFIG_PP_FID_IGNORE_TEXTURECOORDS to avoid removing textures. 2019-01-27 21:05:58 +01:00
Kim Kulling 3aa5a61516
Merge branch 'master' into ETC_Inc 2019-01-23 19:53:43 +01:00
Kim Kulling 05ea039846
Merge branch 'master' into ETC_Inc 2019-01-22 20:10:50 +01:00
Adrian Perez 8191080986 Adapt MemoryIOSystem to delegate unhandled calls to shadowed IO system 2019-01-21 14:14:48 -08:00
Kim Kulling a04b96ef66 Disable step. 2019-01-20 20:29:23 +01:00
Kim Kulling 002af28e54
Merge branch 'master' into fbx-keep-material-params 2019-01-18 17:35:34 +01:00
Merwan Achibet 7dc32ab9b6 Preserve all the material parameters from FBX models 2019-01-17 19:07:15 +01:00
Richard 3c651be640 Exporter::ExportToBlob() Pass on preprocessing and properties. Issue #2302 2019-01-17 13:55:05 +00:00
SchroerDev f7fe729c88
Update FBXConverter.cpp 2019-01-17 12:32:36 +01:00
SchroerDev 3a3340b926
add FBX Line Element support
add FBX Line Element support
2019-01-17 12:26:22 +01:00
Kim Kulling 19c3cea0db
Merge branch 'master' into fix_obj_progress_reporting 2019-01-09 22:09:25 +01:00
Marc Kurtz e37a4de2c2 Fix progress reporting in ObjFileParser. Remove old unused code which is claiming to still take up "1/3" of the total progress. 2019-01-08 15:56:57 -05:00
rickomax f170c84226 Test fixes
Test fixes
2019-01-06 19:38:29 -02:00
rickomax 35a044bda3 Various additions/fixes (FBX blend-shapes support added)
Added animMesh name assignment at ColladaLoader
Fixed animMesh post-processing on ConvertToLhProcess (blend-shapes weren't being affected by post-processing)
Added WindowsStore define. This is used to change some incompatible WinRT methods
Added FBX blend-shapes and blend-shapes animations support
Added Maya FBX specific texture slots parsing
Added extra FBX metadata parsing
Added GLTF2 vertex color parsing
Fixed IFC-Loader zip-buffer reading rountine
Fixed OBJ file parsing line-breaker bug
Fixed IOStreamBuffer cache over-read bug
Added mName field to aiAnimMesh
Reverted EmissiveFactor, TransparencyFactor and SpecularFactor assignment on FBXConverter. Really, the commit #817 breaks a lot of old code.
2019-01-06 16:37:30 -02:00
Kim Kulling a44d56976c Merge branch 'Coverity-findings' of https://github.com/assimp/assimp into Coverity-findings 2018-12-31 14:54:40 +01:00
Kim Kulling c63b1a1fd5 fix review finding: dereference after null-check. 2018-12-31 14:47:54 +01:00
Kim Kulling 96032ca341
Merge branch 'master' into Coverity-findings 2018-12-31 12:16:55 +01:00
Kim Kulling 425a784b23 fix finding: possible override. 2018-12-31 12:16:20 +01:00
Kim Kulling 92bb0febdf fix review finding: fix resource leak. 2018-12-30 16:11:39 +01:00
Kim Kulling 3596c822a5 fix review finding: Wrapper object use after free. 2018-12-30 16:04:49 +01:00
Kim Kulling b42d959418 fix review warning: wrapper object used after free. 2018-12-30 16:02:22 +01:00
Kim Kulling 35d69c360c fix out-of-bound access. 2018-12-30 15:59:15 +01:00
Kim Kulling 281c191367 fix streamreader::end definition for iterators. 2018-12-30 10:44:43 +01:00
Kim Kulling a8fda89079 remove unique_ptr ina local function / method. 2018-12-30 10:36:23 +01:00
Kim Kulling 8912bb333c Fix memory leak. 2018-12-30 10:33:21 +01:00
Kim Kulling f6cbb26d9c Fix unnecessary allocation. 2018-12-30 10:30:12 +01:00
Kim Kulling e09428c95b eremove useless assertion test. 2018-12-29 21:29:42 +01:00
Kim Kulling f5e94a2840 Add a check for the resule of a dynamic cast. 2018-12-29 21:27:20 +01:00
Kim Kulling c1dc3901e7 fix more findings. 2018-12-28 11:17:27 +01:00
Kim Kulling db202584ab remove dead code. 2018-12-28 01:45:47 +01:00
Kim Kulling 859153e3e6 more fixes for coverity-findings. 2018-12-28 01:44:56 +01:00
Kim Kulling 4c6db68d34 Coverity-findings 2018-12-27 22:28:23 +01:00
Marco Di Benedetto ad7964be63 imported animation fix. 2018-12-21 10:36:03 +01:00
Andrés Iraolagoitía 3c1d6a3f87 Fix animations import in gltf2 2018-12-19 20:28:43 -03:00
Marco Di Benedetto cf6dff0b93 Merge https://github.com/assimp/assimp 2018-12-19 17:27:17 +01:00
Kim Kulling ae7a045396
Merge branch 'master' into timmmeh-gltf2-validation-patch 2018-12-11 07:59:11 +01:00
Kim Kulling b5ebd24688 closes https://github.com/assimp/assimp/issues/817: use emmisive factor instead of color. 2018-12-10 22:07:26 +01:00
Kim Kulling e22e93e6d7
Merge branch 'master' into allow_step_disable 2018-12-08 21:38:18 +01:00
ardenpm fd75e4923c
Merge pull request #7 from migenius/migenius-rsws52
Add check for NULL texcoord values.
2018-12-07 09:38:41 +11:00
Paul Arden f63caf894e Add check for NULL texcoord values. 2018-12-06 12:56:02 +11:00
tirichards bb9e3c3593 Fix failed assimp validation for glTF2 sample animations 2018-12-05 14:46:56 -08:00
sfalexrog af323de741 Use ADD_ASSIMP_IMPORTER for STEP importer 2018-12-04 23:28:50 +03:00
twhittock 8b6c6613f9
collada export: Use Camera local coordinate system
Fixes #2255
2018-12-04 14:44:49 +00:00
Kim Kulling f49dbc8f62
Merge branch 'master' into OFF_Importer_Redesign_js_francal 2018-12-03 23:15:05 +01:00
Kim Kulling ce91f5c888 Off-Importer: introduce unittest. 2018-12-03 21:24:06 +01:00
sfalexrog 30d3c8c6a3 Fix CMake target alias typo 2018-12-03 23:22:34 +03:00
Kim Kulling bb66af544a closes https://github.com/assimp/assimp/issues/2228: prepare pull-request. 2018-12-02 13:08:47 +01:00
Kim Kulling 117a2bc116
Merge branch 'master' into kimkulling-patch-2-1 2018-12-01 18:41:15 +01:00
Kim Kulling aa0a5bb36f
Merge branch 'master' into gltf2-anim-duration 2018-12-01 13:41:54 +01:00
Kim Kulling 576673536b
Update SMDLoader.cpp
Fix compiler warning and do some reformattings.
2018-11-30 22:17:42 +01:00
Kim Kulling b16f7c98c0
Merge branch 'master' into dev 2018-11-30 09:25:30 +01:00
wxyu 2761681022 Issue 1639: Smd mesh vertex bone assignment
bone.mOffsetMatrix not set when bone.iParent == -1
2018-11-30 14:42:05 +08:00
wxyu 9100ca8664 Fix: Smd Cannot read bone names containing spaces 2018-11-30 14:42:05 +08:00
wxyu 19521d222b Issue 1117: Smd load multiple animations
Read an animation list from a file
2018-11-30 14:42:05 +08:00
wxyu 8c2e975508 Fix smd animation mess
aiMatrix4x4t<TReal>::FromEulerAnglesXYZ modified to row order
2018-11-30 14:42:05 +08:00
wxyu ef151b4610 Smd loads a single animation file
Can't load without mesh before
2018-11-30 14:42:05 +08:00
Kim Kulling ebcea3cb02
Merge branch 'master' into a-bunch-of-fixes 2018-11-29 20:34:13 +01:00
Kim Kulling 47e3301c47
Update glTF2Asset.inl
Remove my nonsense, sorry!
2018-11-27 23:22:09 +01:00
Kim Kulling 657014dff6
Update glTF2Asset.inl
Fix possible nullptr-dereferencing.
2018-11-27 20:18:00 +01:00
Luke Lau ccea70c61f Calculate the mMaxDuration property based off of keyframes 2018-11-27 11:49:00 +00:00
Luke Lau 0bb672c6fa Fix scenes not always being loaded 2018-11-27 11:45:53 +00:00
Martin Jeřábek 770356a55b AssbinLoader: fix setting mNumChildren and releasing the smart pointer 2018-11-26 15:10:48 +01:00
Martin Jerabek a7cbb4386c 3DSLoader: exception-safety
Fixes memory leaks and/or crashes on malformed input.
2018-11-26 12:06:08 +01:00
Martin Jeřábek 430fe98c53 AssbinLoader: hardening, exception safety
Fixes potential memory leaks and crashes on malformed input.
2018-11-26 12:06:08 +01:00
Martin Jerabek 66599b6392 Assbin: fix loading/exporting compressed format 2018-11-26 12:06:08 +01:00
Kim Kulling 02359ea369 closes https://github.com/assimp/assimp/issues/2202: put STEPParser out of IFC importer. 2018-11-25 12:00:51 +01:00
Kim Kulling d03e978c1b closes https://github.com/assimp/assimp/issues/2210: use different enum value. 2018-11-25 10:45:45 +01:00
Kim Kulling 23af5336d5
Update D3MFImporter.cpp
Avoid using extension twice.
2018-11-23 20:21:58 +01:00
rdb e595410de1
Fix static init ordering issue in 3mf importer 2018-11-23 20:04:16 +01:00
Kim Kulling a24502577f DXF-Importer: some small review findings. 2018-11-21 22:00:11 +01:00
Kim Kulling 9ae8efcf09 closes https://github.com/assimp/assimp/issues/2229: fix count of polylines when only one vertex was indexed. 2018-11-21 21:29:09 +01:00
Kim Kulling eba1887d34
Merge branch 'master' into kimkulling-patch-2-1 2018-11-20 20:15:44 +01:00
Matthias Moulin 0535b28908
nullptr instead of NULL 2018-11-16 12:17:12 +01:00
Matthias Moulin 48ee14c64e
C4703 workaround for msvc++
`error C4703: potentially uninitialized local pointer variable 'pcFirstFrame'` in debug mode
2018-11-14 21:20:27 +01:00
Kim Kulling 04ee420f63
Merge branch 'master' into kimkulling-patch-2-1 2018-11-13 16:08:18 +01:00
Kim Kulling 6a8e11dbb2
Update Exporter.cpp
Fix review finding.
2018-11-13 13:10:16 +01:00
Kim Kulling 9bf4425239
Merge branch 'master' into gltf_skinmesh 2018-11-13 09:13:01 +01:00
Kim Kulling b6af80f2fd closes https://github.com/assimp/assimp/issues/2199: introduce first version for exporter. 2018-11-12 22:26:10 +01:00
ruyo c30c4ae6e2 glTF2 importer multiple primitives and 16-bit index buffer skinmesh support. 2018-11-11 14:27:11 +09:00
Kim Kulling 02c6b9b64b
Merge branch 'master' into issue_2206 2018-11-09 13:13:52 +01:00
Kim Kulling e787604ff1
Update ValidateDataStructure.cpp
Integrate review findings.
2018-11-09 11:54:12 +01:00
Kim Kulling 850d57b39d closes https://github.com/assimp/assimp/issues/2206: make bone error in verification more verbose. 2018-11-08 22:12:05 +01:00
Kim Kulling 044c9b39e0
Merge branch 'master' into patch-2 2018-11-08 22:00:33 +01:00
mnml_ d5c9b27af8
delete[] doesnt set nullptr 2018-11-08 12:49:35 +01:00
mnml_ 97450fcb55
added DropFaceNormalsProcess to out vector 2018-11-08 11:44:44 +01:00
kimkulling ad237f1949 MD5-Loader: set meshnames. 2018-11-02 17:02:36 +01:00
haroonq d1af9526b1
Update glTF2Importer.cpp 2018-11-01 10:52:39 -07:00
haroonq e205399052
Update glTF2Importer.cpp 2018-11-01 09:01:19 -07:00
haroonq 69abac59d2
Update glTF2Exporter.cpp 2018-11-01 08:49:06 -07:00
Kim Kulling b33054e05a
Merge branch 'master' into glt2anim 2018-10-30 15:51:08 +01:00
Kim Kulling b8e1207b13
Merge branch 'master' into master 2018-10-30 12:43:15 +01:00
kkulling dc591f5c07 Merge branch 'patch-1' of https://github.com/ihmc3jn09hk/assimp into ihmc3jn09hk-patch-1 2018-10-30 10:44:40 +01:00
haroonq 04c6d8347b
Update glTF2Exporter.cpp 2018-10-29 15:23:26 -07:00
haroonq bc80652ae9
Update glTF2Exporter.cpp 2018-10-29 15:04:48 -07:00
haroonq e5eb00d8d3
Update glTF2Importer.cpp 2018-10-29 14:53:33 -07:00
haroonq 7b9f4a66de
Update glTF2Exporter.cpp 2018-10-29 14:52:41 -07:00
Haroon Qureshi bfe1dc2914 Merge branch 'glt2anim' of https://github.com/haroonq/assimp into glt2anim 2018-10-29 14:46:52 -07:00
Haroon Qureshi acad9a06e9 Add support for importing GLTF2 animations.
Refactors the glTF2 internal classes to more closely reflect the structure
of the actual GLTF2 file format. Adds implementations for reading skins
and animations from GLTF2 files into those structures.

Also provides implementations for converting skins and animations from GLTF
into assimp data structures.  Special handling is required for bone weights
since assimp stores vertex-weights-per-bone whereas GLTF2 stores
bone-weights-per-vertex.  Only supports keyframed LINEAR animation data;
STEP and CUBICSPLINE is not currently supported.
2018-10-29 14:44:29 -07:00
Kim Kulling c465040738
Update DropFaceNormalsProcess.cpp
Fix typo.
2018-10-29 16:58:02 +01:00
d 6d1dee606a integrated DropFaceNormals process (cmake, poststepregistry) 2018-10-29 16:26:50 +01:00
d 95c0deaaff added DropFaceNormals process 2018-10-29 16:23:11 +01:00
Haroon Qureshi 57d3d71b6e Add support for importing GLTF2 animations.
Refactors the glTF2 internal classes to more closely reflect the structure
of the actual GLTF2 file format. Adds implementations for reading skins
and animations from GLTF2 files into those structures.

Also provides implementations for converting skins and animations from GLTF
into assimp data structures.  Special handling is required for bone weights
since assimp stores vertex-weights-per-bone whereas GLTF2 stores
bone-weights-per-vertex.  Only supports keyframed LINEAR animation data;
STEP and CUBICSPLINE is not currently supported.
2018-10-26 15:39:28 -07:00
ihmc3jn09hk 9a86714265
Merge branch 'master' into patch-1 2018-10-21 14:18:02 +08:00
Minmin Gong df1669d07e Fix the wrong results when calling aiGetMaterialInteger on bool type properties, such as AI_MATKEY_TWOSIDED. 2018-10-20 17:00:27 -07:00
Minmin Gong 248f6c3aa1 Make gltf2's roughnessAsShininess matches between importer and exporter.
In glTF2Exporter, roughnessFactor = 1 - normalizedShininess = 1 - someFunc(sqrt(shininess / 1000)). But in gltf2Importer, roughnessAsShininess = (1 - roughnessFactor) * 1000. No sqr there. So if save a shininess to a gltf2 and load it back, the value changed. This fix add a square to importer to make sure the consistency.
2018-10-16 21:17:35 -07:00
ihmc3jn09hk 05b5930b29
Amended the "Key" for the database ReadField
Amended the key "flags" -> "flag". The field key("flags") was not matching the key("flag") in the BlendDNA. It was annoying during debug mode since the exception prompt for the mismatching and.
2018-10-16 00:25:44 +08:00
Kim Kulling b340c5f2e8
Merge branch 'master' into step-import 2018-10-09 17:35:44 +02:00
Kim Kulling ed43c48e93
Update SplitLargeMeshes.cpp
Fix double-parthesis.
2018-10-09 15:34:44 +02:00
Kim Kulling d166e1fd73
Merge branch 'master' into Manage_PCloud_in_Filters 2018-10-09 11:56:39 +02:00
Kim Kulling 27c9461aad
Update SplitLargeMeshes.cpp
Fix typo.
2018-10-09 11:56:30 +02:00
Kim Kulling 1c672f4c9d
Update SplitLargeMeshes.cpp
Fix clang compile error ( unneeded enum parhesis ) and fix some minor findings.
2018-10-08 21:06:48 +02:00
Kim Kulling 871e1524e4
Update IFCLoader.cpp
Remove dead code.
2018-10-08 14:51:50 +02:00
Kim Kulling 931ef2cd0b StepFile: fix conversion from ulong to uint. 2018-10-07 21:15:09 +02:00
Kim Kulling 2e443dc669
Merge branch 'master' into C4267 2018-10-07 20:31:41 +02:00
Burkhard Mittelbach afbdb043b0
ReadFieldPtrVector should return true when successful 2018-10-07 19:11:34 +02:00
Kim Kulling 4c5c172ee2
Merge branch 'master' into C4267 2018-10-07 18:16:44 +02:00
Kim Kulling e84ccaea15 Merge branch 'master' into step-import 2018-10-07 16:22:32 +02:00
Gargaj 16bdac5c9e
Merge branch 'master' into patch-1 2018-10-07 16:04:11 +02:00
Gargaj 6af016d149
Fix Blender FOV loading 2018-10-07 15:34:44 +02:00
Kim Kulling c355412348
Merge branch 'master' into C4244 2018-10-07 14:29:39 +02:00
Matthias Moulin c90eda983d
Fix: C4267 2018-10-06 16:31:58 +02:00
Matthias Moulin b4425d8e36
Fix: C4267 2018-10-06 16:30:38 +02:00
Matthias Moulin e7da1c634d
Fix: C4244 conversion warning 2018-10-06 16:28:10 +02:00
Matthias Moulin 239c59d715
Fixed include: IFCReaderGen_4 instead of IFCReaderGen4 2018-10-06 16:12:58 +02:00
Matthias Moulin 88c173a6f4
Replaced "../Include/" include from glTFAsset.h 2018-10-06 15:20:28 +02:00
Matthias Moulin 47fcbfd369
Replaced "../Include/" include from glTF2Asset.h 2018-10-06 15:19:56 +02:00
Matthias Moulin 7061493ead
Replaced "../Include/" include from HMPFileData.h 2018-10-06 15:16:40 +02:00
Matthias Moulin d7bcd58174
Replaced "../Include/" include from MD4FileData.h 2018-10-06 15:15:43 +02:00
Matthias Moulin 8bb4b57d1d
Replaced "../Include/" include from HMPFileData.h 2018-10-06 15:11:47 +02:00
Matthias Moulin 91a805a082
Update HalfLifeFileData.h 2018-10-06 15:05:18 +02:00
Matthias Moulin 463a7e8016
Replaced "../Include/" include from MD3FileData.h 2018-10-06 15:02:58 +02:00
Matthias Moulin 99fc989af7
Replaced "../Include/" include from MDLFileData.h 2018-10-06 15:01:42 +02:00
Matthias Moulin d9a7ed19a8
Replaced "../Include/" include from 3DSHelper.h 2018-10-06 14:59:20 +02:00
Matthias Moulin 531f30302f
Replaced "../Include/" include from 3DSHelper.h 2018-10-06 14:58:06 +02:00
Matthias Moulin d4b0cd53ea
Replaced "../Include/" include from FBXDocumentUtil.h 2018-10-06 14:55:20 +02:00
Kim Kulling 619e09fbec Stepfile: separate generated code. 2018-10-06 08:45:55 +02:00
Kim Kulling 106b139ef3 Stepfile: renaming first generated code. 2018-10-05 19:42:26 +02:00
Kim Kulling aceaecaed7 StepFile: introduce generated parser code. 2018-10-05 19:41:52 +02:00
dormon b43cf92337 Improved cmake configs for Windows and Linux.
Now the configs follows the standard cmake-package code: see https://cmake.org/cmake/help/v3.12/manual/cmake-packages.7.html

Downstreamer no longer have to manually specify target_include_directories with ${ASSIMP_INCLUDE_DIRS}, target_link_libraries with ${ASSIMP_LIBRARY_DIRS} and so on.

Downstreamer can now use:
find_package(assimp CONFIG REQUIRED)
target_link_libraries(AWESOME_APP PUBLIC assimp::assimp)
and everything should work.

Added assimpTargets.cmake.in
Added assimpTargets-debug.cmake.in
Added assimpTargets-release.cmake.in
Modified CMakeLists.txt
Modified code/CMakeLists.txt - added ALIAS assimp::assimp

Tested on Ubuntu 18.04 and Windows 10
2018-09-30 17:18:18 +02:00
Kim Kulling 35374e777b Merge branch 'step-import' of https://github.com/assimp/assimp into step-import 2018-09-28 18:02:54 +02:00