diff options
author | Andy Nichols <nezticle@gmail.com> | 2024-04-25 13:15:03 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2024-04-26 02:02:02 +0000 |
commit | a8ffd17ea7c580b457cf22654e5c4053a311b453 (patch) | |
tree | 128ed28421f9fdab3adb1fa06bd4c8283d7c5ec9 | |
parent | 8f2b9eeb1d633df658cbe9f8373bb97dc9a2bc4a (diff) |
Update Assimp to v5.4.0
Fixes: QTBUG-124760
Change-Id: Ib68a63c5f8761faef38d6abb34aef1645ee799d3
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
(cherry picked from commit 3bdf25acecc999cefc8f1899f268c267cb84d66a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | src/3rdparty/assimp/config.h | 81 | ||||
-rw-r--r-- | src/3rdparty/assimp/qt_attribution.json | 6 | ||||
-rw-r--r-- | src/3rdparty/assimp/revision.h | 6 | ||||
m--------- | src/3rdparty/assimp/src | 0 |
4 files changed, 61 insertions, 32 deletions
diff --git a/src/3rdparty/assimp/config.h b/src/3rdparty/assimp/config.h index 8ec7863c..ad82a75d 100644 --- a/src/3rdparty/assimp/config.h +++ b/src/3rdparty/assimp/config.h @@ -3,7 +3,7 @@ Open Asset Import Library (assimp) --------------------------------------------------------------------------- -Copyright (c) 2006-2020, assimp team +Copyright (c) 2006-2024, assimp team All rights reserved. @@ -102,28 +102,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define AI_CONFIG_IMPORT_NO_SKELETON_MESHES \ "IMPORT_NO_SKELETON_MESHES" - - -# if 0 // not implemented yet -// --------------------------------------------------------------------------- -/** @brief Set Assimp's multithreading policy. - * - * This setting is ignored if Assimp was built without boost.thread - * support (ASSIMP_BUILD_NO_THREADING, which is implied by ASSIMP_BUILD_BOOST_WORKAROUND). - * Possible values are: -1 to let Assimp decide what to do, 0 to disable - * multithreading entirely and any number larger than 0 to force a specific - * number of threads. Assimp is always free to ignore this settings, which is - * merely a hint. Usually, the default value (-1) will be fine. However, if - * Assimp is used concurrently from multiple user threads, it might be useful - * to limit each Importer instance to a specific number of cores. - * - * For more information, see the @link threading Threading page@endlink. - * Property type: int, default value: -1. - */ -#define AI_CONFIG_GLOB_MULTITHREADING \ - "GLOB_MULTITHREADING" -#endif - // ########################################################################### // POST PROCESSING SETTINGS // Various stuff to fine-tune the behavior of a specific post processing step. @@ -266,6 +244,20 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. "PP_PTV_ROOT_TRANSFORMATION" // --------------------------------------------------------------------------- +/** @brief Set epsilon to check the identity of the matrix 4x4. + * + * This is used by aiMatrix4x4t<TReal>::IsIdentity(const TReal epsilon). + * @note The default value is 10e-3f for backward compatibility of legacy code. + * Property type: Float. + */ +#define AI_CONFIG_CHECK_IDENTITY_MATRIX_EPSILON \ + "CHECK_IDENTITY_MATRIX_EPSILON" +// default value for AI_CONFIG_CHECK_IDENTITY_MATRIX_EPSILON +#if (!defined AI_CONFIG_CHECK_IDENTITY_MATRIX_EPSILON_DEFAULT) +# define AI_CONFIG_CHECK_IDENTITY_MATRIX_EPSILON_DEFAULT 10e-3f +#endif + +// --------------------------------------------------------------------------- /** @brief Configures the #aiProcess_FindDegenerates step to * remove degenerated primitives from the import - immediately. * @@ -281,7 +273,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // --------------------------------------------------------------------------- /** * @brief Configures the #aiProcess_FindDegenerates to check the area of a - * trinagle to be greates than e-6. If this is not the case the triangle will + * triangle to be greater than e-6. If this is not the case the triangle will * be removed if #AI_CONFIG_PP_FD_REMOVE is set to true. */ #define AI_CONFIG_PP_FD_CHECKAREA \ @@ -703,7 +695,7 @@ enum aiComponent "AI_CONFIG_FBX_CONVERT_TO_M" // --------------------------------------------------------------------------- -/** @brief Will enable the skeleton structo to store bone data. +/** @brief Will enable the skeleton struct to store bone data. * * This will decouple the bone coupling to the mesh. This feature is * experimental. @@ -1110,9 +1102,45 @@ enum aiComponent * Point clouds are only a collection of vertices which have nor spatial organization * by a face and the validation process will remove them. Enabling this feature will * switch off the flag and enable the functionality to export pure point clouds. + * + * Property type: Bool. Default value: false. */ #define AI_CONFIG_EXPORT_POINT_CLOUDS "EXPORT_POINT_CLOUDS" +/** @brief Specifies whether to use the deprecated KHR_materials_pbrSpecularGlossiness extension + * + * When this flag is undefined any material with specularity will use the new KHR_materials_specular + * extension. Enabling this flag will revert to the deprecated extension. Note that exporting + * KHR_materials_pbrSpecularGlossiness with extensions other than KHR_materials_unlit is unsupported, + * including the basic pbrMetallicRoughness spec. + * + * Property type: Bool. Default value: false. + */ +#define AI_CONFIG_USE_GLTF_PBR_SPECULAR_GLOSSINESS "USE_GLTF_PBR_SPECULAR_GLOSSINESS" + +/** @brief Specifies whether to apply a limit on the number of four bones per vertex in skinning + * + * When this flag is not defined, all bone weights and indices are limited to a + * maximum of four bones for each vertex (attributes JOINT_0 and WEIGHT_0 only). + * By enabling this flag, the number of bones per vertex is unlimited. + * In both cases, indices and bone weights are sorted by weight in descending order. + * In the case of the limit of up to four bones, a maximum of the four largest values are exported. + * Weights are not normalized. + * Property type: Bool. Default value: false. + */ +#define AI_CONFIG_EXPORT_GLTF_UNLIMITED_SKINNING_BONES_PER_VERTEX \ + "USE_UNLIMITED_BONES_PER VERTEX" + +/** @brief Specifies whether to write the value referenced to opacity in TransparencyFactor of each material. + * + * When this flag is not defined, the TransparencyFactor value of each meterial is 1.0. + * By enabling this flag, the value is 1.0 - opacity; + + * Property type: Bool. Default value: false. + */ +#define AI_CONFIG_EXPORT_FBX_TRANSPARENCY_FACTOR_REFER_TO_OPACITY \ + "EXPORT_FBX_TRANSPARENCY_FACTOR_REFER_TO_OPACITY" + /** * @brief Specifies the blob name, assimp uses for exporting. * @@ -1131,7 +1159,8 @@ enum aiComponent #define AI_CONFIG_EXPORT_BLOB_NAME "EXPORT_BLOB_NAME" /** - * @brief Specifies a gobal key factor for scale, float value + * + * @brief Specifies a global key factor for scale, float value */ #define AI_CONFIG_GLOBAL_SCALE_FACTOR_KEY "GLOBAL_SCALE_FACTOR" diff --git a/src/3rdparty/assimp/qt_attribution.json b/src/3rdparty/assimp/qt_attribution.json index 2c56d5f8..b4664525 100644 --- a/src/3rdparty/assimp/qt_attribution.json +++ b/src/3rdparty/assimp/qt_attribution.json @@ -7,11 +7,11 @@ "SecurityCritical": true, "Homepage": "http://www.assimp.org/", - "Version": "5.3.1", - "DownloadLocation": "https://github.com/assimp/assimp/releases/tag/v5.3.1", + "Version": "5.4.0", + "DownloadLocation": "https://github.com/assimp/assimp/releases/tag/v5.4.0", "License": "BSD 3-clause \"New\" or \"Revised\" Licensee", "LicenseId": "BSD-3-Clause", "LicenseFile": "LICENSE", - "Copyright": "Copyright (c) 2006-2022, assimp team" + "Copyright": "Copyright (c) 2006-2024, assimp team" } diff --git a/src/3rdparty/assimp/revision.h b/src/3rdparty/assimp/revision.h index f3f7e46e..f30f745f 100644 --- a/src/3rdparty/assimp/revision.h +++ b/src/3rdparty/assimp/revision.h @@ -1,12 +1,12 @@ #ifndef ASSIMP_REVISION_H_INC #define ASSIMP_REVISION_H_INC -#define GitVersion 0xc60a259f +#define GitVersion 0x8b9ed34e #define GitBranch "HEAD" #define VER_MAJOR 5 -#define VER_MINOR 3 -#define VER_PATCH 1 +#define VER_MINOR 4 +#define VER_PATCH 0 #define VER_BUILD 0 #define STR_HELP(x) #x diff --git a/src/3rdparty/assimp/src b/src/3rdparty/assimp/src -Subproject e21b73ab492fefb0cab229da75e385ba0befbff +Subproject 5967dee48b0b8ed32a41579559570e380462a1d |