Commit Graph

3758 Commits (b506d35999edcec448b71fa3545f937b9f04dcc2)

Author SHA1 Message Date
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
Kim Kulling 3249409243 Some minor findings. 2018-09-28 18:02:49 +02:00
kimkulling 4003309e7a StepFile: prepare code gen. 2018-09-28 17:06:03 +02:00
kkulling e38629613c Merge branch 'master' into step-import 2018-09-28 15:59:27 +02:00
Kim Kulling 50a95ad0f2
Merge branch 'master' into migenius-rsws52 2018-09-27 01:04:44 +02:00
Kim Kulling 2dc572167c
Merge branch 'master' into issue_2154 2018-09-26 22:13:29 +02:00
Kim Kulling 35a727a3e4 closes https://github.com/assimp/assimp/issues/2154: remove redundant file from source folder. 2018-09-26 21:37:02 +02:00
Kim Kulling 74db0e906b Fix some minor findings. 2018-09-26 21:19:40 +02:00
Kim Kulling ea0f074933 Merge branch 'kimmi_dev' of https://github.com/assimp/assimp into kimmi_dev 2018-09-26 20:53:37 +02:00
Kim Kulling 9c8e6f2127 Fix overflow by face allocation. 2018-09-26 20:52:59 +02:00
Kim Kulling 5d091c4591
Merge branch 'master' into kimmi_dev 2018-09-26 19:15:58 +02:00
ardenpm 586c812eee
Merge pull request #5 from assimp/master
Merge commits from head master.
2018-09-26 15:44:41 +10:00
Kim Kulling 07362fdd35 Merge branch 'kimmi_dev' of https://github.com/assimp/assimp into kimmi_dev 2018-09-25 20:16:28 +02:00
Kim Kulling 6146ff818c Enable coveralls for export tests. 2018-09-25 20:15:48 +02:00
Alexandre Avenel 504e5fd5c5 Use unique_ptr for gltf2 textures 2018-09-24 21:28:53 +02:00
Kim Kulling 72aa49c54f
Merge branch 'master' into kimmi_dev 2018-09-22 15:52:22 +02:00
Kim Kulling 9f6238f3af INtroduce unittests. 2018-09-22 15:50:40 +02:00
Kim Kulling 56392cc02f
Update MMDPmxParser.cpp
Fix encoding for readstrings.
2018-09-22 12:50:23 +02:00
Kim Kulling d42f9a3226
Update MMDImporter.cpp
Reformattings
2018-09-22 12:46:38 +02:00
Kim Kulling 02c4b7f1bc
Merge branch 'master' into umw_dev 2018-09-22 10:24:09 +02:00
Kim Kulling cc0b3e1249
Merge branch 'master' into fix_gltf2_export_componentType_error 2018-09-22 07:54:10 +02:00
Kim Kulling 24b42274fb
Update MDCFileData.h
Fix build by remove not supported initializer for array.
2018-09-21 20:13:35 +02:00
Kim Kulling 3a38c2c067
Update MDLFileData.h
Remove not supported array initialization.
2018-09-21 19:43:19 +02:00
Kim Kulling e129d88825
Update ASEParser.h
Fix not supported array initialization.
2018-09-21 19:26:41 +02:00
Kim Kulling 2017e50e7b
Update AMFImporter_Node.hpp
Fix invalid array initialization.
2018-09-21 18:59:47 +02:00
kimkulling f75bf6d99c MAke noexcept compiler-specific. 2018-09-21 16:25:27 +02:00
kimkulling f818a909e5 Fix static-code-analysis findings. 2018-09-21 16:07:09 +02:00
arkeon7 6cea62142c
Merge branch 'master' into Manage_PCloud_in_Filters 2018-09-20 10:34:55 +02:00
Arkeon 9eeaf19eab Allow findDegenerate and SplitLargeMesh to pass point clouds models.
Otherwise the model is removed or crash
2018-09-20 10:31:32 +02:00
Kim Kulling 29496d877e
Merge branch 'master' into master 2018-09-17 19:58:11 +02:00
Kim Kulling 6ee9b07c49 closes https://github.com/assimp/assimp/issues/212: introduce unittest for line-splitter, will validate that the current behaviour is correct. 2018-09-16 17:13:34 +02:00
Kim Kulling 4e357d1ff4
Merge branch 'master' into master 2018-09-13 20:04:41 +02:00
Paul Arden 7911faf130 Fixed problem getting glTF 2.0 camera type, fixes #2138. 2018-09-13 16:04:04 +10:00
FRICOTEAUX d5de32ec1c FBX import: fix import of direct data by vertices + unify node renaming 2018-09-11 16:07:43 +02:00
Kim Kulling c1ed5e0048
Merge branch 'master' into assbin_test 2018-09-11 11:14:50 +02:00
Kim Kulling afd47d5ab6
Update AssbinLoader.cpp
Fix memory leak,
2018-09-11 09:12:28 +02:00
Kim Kulling 081365df48 Introduce simple export test for assbin. 2018-09-10 22:42:24 +02:00
Turo Lamminen c3d8464a37 Remove aiCreateAndRegisterDefaultMaterial, it's completely wrong 2018-09-10 16:41:12 +03:00
Kim Kulling c25a2dfc22 Assbin: add unittest. 2018-09-08 19:15:56 +02:00
Daniel Löber 2ee09b2528 Correct 3MF displaycolor import 2018-09-05 16:23:47 +02:00
Joe Schutte 640698ba57 Fix compile error that clang caught. 2018-09-03 13:22:46 -07:00
Kim Kulling d3f1f2337d Merge master 2018-09-03 21:59:08 +02:00
Kim Kulling b191754863 Merge branch 'master' into step-import 2018-09-03 21:59:00 +02:00
Joe Schutte 78fe5e7f04 Fix expensive memory allocation and memory copying occurring in obj files with a large number of meshes. 2018-09-03 11:33:56 -07:00
Kim Kulling 499f66f3cc Step: check step-files for import. 2018-09-02 13:04:52 +02:00
Kim Kulling a7306abcfe MDC-Loader: fix a possible nullptr access. 2018-08-31 19:29:17 +02:00
Kim Kulling dcfc505c4c
Merge branch 'master' into issue_1451 2018-08-28 19:44:46 +02:00
Kim Kulling aa8e32c509 closes https://github.com/assimp/assimp/issues/1451: break when assimp-bin format was exported with a different version. 2018-08-28 19:42:20 +02:00
Kim Kulling c75bc99902 Step-Importer: introduce new files. 2018-08-26 19:05:21 +02:00
Kim Kulling 09cf839188
Merge branch 'master' into master 2018-08-19 13:17:27 +02:00
gstanlo 74e8200a49
Merge branch 'master' into master 2018-08-17 14:12:15 -07:00
gstanlo 82f3d40d60 Fixes crash when importing invalid glTF/2.0 files
Skips some glTF/2.0 uv processing if the count of uvs in the attribute stream doesn't match the vertex count.

This happens with some malformed glTF/2.0 files, and the change will allow them to be processed properly.
Without the change, an access violation will occur several lines below if uv count is less than the position count.
2018-08-17 13:49:01 -07:00
Kim Kulling a16fb1e54c
Merge branch 'master' into master 2018-08-17 21:46:08 +02:00
Mike Feldstein 0ba57202f7 Use array delete command vs object delete since mMeshes is allocated with new[] 2018-08-16 13:56:35 -07:00
Kim Kulling f4e6d4bb9e
Merge branch 'master' into master 2018-08-16 19:02:20 +02:00
Jeka Vlasov 102486005d Fix memory leak on throw 2018-08-15 03:40:39 +03:00
Jeka Vlasov 2b15586e6b Replace memcpy_s with memcpy to fix build with gcc 4.8 2018-08-15 01:22:28 +03:00
Jeka Vlasov d25083dba9 Add point cloud support for OBJ importer 2018-08-13 00:18:12 +03:00