Commit Graph

4641 Commits (9511976485a6709af22cb515f97ccefb90676d9a)

Author SHA1 Message Date
Max Vollmer (Microsoft Havok) 54419eb9a0
Merge branch 'master' into GLTF2_invalid_buffer_fix 2020-03-31 09:54:12 +01:00
Ville Ruusutie 855452831c
Merge branch 'master' into fbx_rotation_fix 2020-03-27 14:36:00 +02:00
Ville Ruusutie 7f521b4eb4
Merge branch 'master' into fbx_rotation_fix 2020-03-26 21:28:03 +02:00
Marc-Antoine Lortie 609632c6a5 Added missing functionalities to C API.
The C API functions that have been added are the following:

Vector2:
- aiVector2AreEqual
- aiVector2AreEqualEpsilon
- aiVector2Add
- aiVector2Subtract
- aiVector2Scale
- aiVector2SymMul
- aiVector2DivideByScalar
- aiVector2DivideByVector
- aiVector2Length
- aiVector2SquareLength
- aiVector2Negate
- aiVector2DotProduct
- aiVector2Normalize

Vector3:
- aiVector3AreEqual
- aiVector3AreEqualEpsilon
- aiVector3LessThan
- aiVector3Add
- aiVector3Subtract
- aiVector3Scale
- aiVector3SymMul
- aiVector3DivideByScalar
- aiVector3DivideByVector
- aiVector3Length
- aiVector3SquareLength
- aiVector3Negate
- aiVector3DotProduct
- aiVector3CrossProduct
- aiVector3Normalize
- aiVector3NormalizeSafe
- aiVector3RotateByQuaternion

Matrix3x3:
- aiMatrix3FromMatrix4
- aiMatrix3FromQuaternion
- aiMatrix3AreEqual
- aiMatrix3AreEqualEpsilon
- aiMatrix3Inverse
- aiMatrix3Determinant
- aiMatrix3RotationZ
- aiMatrix3FromRotationAroundAxis
- aiMatrix3Translation
- aiMatrix3FromTo

Matrix4x4:
- aiMatrix4FromMatrix3
- aiMatrix4FromScalingQuaternionPosition
- aiMatrix4Add
- aiMatrix4AreEqual
- aiMatrix4AreEqualEpsilon
- aiMatrix4Inverse
- aiMatrix4Determinant
- aiMatrix4IsIdentity
- aiMatrix4DecomposeIntoScalingEulerAnglesPosition
- aiMatrix4DecomposeIntoScalingAxisAnglePosition
- aiMatrix4DecomposeNoScaling
- aiMatrix4FromEulerAngles
- aiMatrix4RotationX
- aiMatrix4RotationY
- aiMatrix4RotationZ
- aiMatrix4FromRotationAroundAxis
- aiMatrix4Translation
- aiMatrix4Scaling
- aiMatrix4FromTo

Quaternion:
- aiQuaternionFromEulerAngles
- aiQuaternionFromAxisAngle
- aiQuaternionFromNormalizedQuaternion
- aiQuaternionAreEqual
- aiQuaternionAreEqualEpsilon
- aiQuaternionNormalize
- aiQuaternionConjugate
- aiQuaternionMultiply
- aiQuaternionInterpolate

In addition, a const qualifier has been added to aiQuaterniont::Rotate to allow call to this method via a const aiQuaterniont pointer.
2020-03-26 13:08:40 -04:00
napina 14b8d1242b Added pre and post rotation handling to FBXConverter::GenerateSimpleNodeAnim. Fixed quaternion interpolation flip. Cleaned code. 2020-03-25 08:20:31 +02:00
Max Vollmer (Microsoft Havok) ec17aff6d6
Merge branch 'master' into GLTF2_invalid_buffer_fix 2020-03-24 11:56:44 +00:00
Max Vollmer (Microsoft Havok) ef20cdc430
Merge branch 'master' into GLTF2_guarantee_rootnode_fix 2020-03-24 11:56:42 +00:00
simon chen 891b1d4b3f
Merge branch 'master' into fix_FBX_no_preservePivots_bug 2020-03-24 14:38:23 +08:00
Andy Maloney 046f50880f {cmake} Prefix assimp options with "ASSIMP_" to avoid pollution when included as a submodule
When libraries are included as submodules in large projects, having an option with a generic name like "BUILD_DOCS" is not very helpful. (e.g. one project I work on includes many libraries as submodules)

It can also clash with options from other libraries which can break things.
2020-03-23 12:35:32 -04:00
Max Vollmer (Microsoft Havok) 94da6d61a4
Merge branch 'master' into GLTF2_invalid_buffer_fix 2020-03-23 08:03:29 +00:00
Max Vollmer (Microsoft Havok) 973e38ad97
Merge branch 'master' into GLTF2_guarantee_rootnode_fix 2020-03-23 07:57:38 +00:00
Kim Kulling c0ae9b6040 fix invalid check 2020-03-22 14:21:24 +01:00
Kim Kulling 68a9fa2df3 reformat unittests. 2020-03-22 12:13:09 +01:00
Kim Kulling 4283e61189 fix clang-compiler warning: wrong move constructor. 2020-03-21 18:25:49 +01:00
Kim Kulling 089ab0693a fix static-code-analysis check. 2020-03-21 18:03:35 +01:00
Kim Kulling 7d624e7f60 obj: add missing init. 2020-03-21 09:00:29 +01:00
Kim Kulling 9f7d9becb2 fix the linux build. 2020-03-21 08:56:49 +01:00
kkulling b40769c395 try to fix linux build.2 2020-03-20 13:18:49 +01:00
chenmou.cm 7c3fd351d3 fix no preservePivots bug 2020-03-20 17:19:27 +08:00
kimkulling ac3f08a4d8 fix 3rdparty warnings. 2020-03-20 09:49:36 +01:00
kimkulling 2ee948eb84 fix missing parthesis. 2020-03-19 17:07:21 +01:00
kimkulling 5b8e6832c3 add mssing move constructor. 2020-03-19 16:53:05 +01:00
kimkulling de06c860ea add missing constructor. 2020-03-19 16:20:55 +01:00
kimkulling 9ba014739a fix compiler warning. 2020-03-19 15:25:34 +01:00
kimkulling 4d917c97bd fix warnings detected in vs2017. 2020-03-19 12:58:41 +01:00
kimkulling 68f7f545a9 fix typo. 2020-03-19 11:09:20 +01:00
Kim Kulling 9aa5e3e04f fix new vs2013 warnings. 2020-03-18 21:32:17 +01:00
Kim Kulling 097d2faeea fix vs2013 specific warnings. 2020-03-18 19:31:30 +01:00
kimkulling d1afd97ec2 fix 2 more warnings for vs2013. 2020-03-18 16:48:32 +01:00
Kim Kulling 017b3238ba
Update IFCReaderGen_2x3.h
Fix a typo
2020-03-18 16:20:38 +01:00
Kim Kulling 959446e416
Update IFCReaderGen_2x3.h
Disable warning
2020-03-18 15:52:16 +01:00
Kim Kulling f68c60c7c6
Update StepReaderGen.h
disable warning
2020-03-17 20:32:23 +01:00
Kim Kulling a2fa19aa78
Merge branch 'master' into enable_vs_warning_all 2020-03-17 19:19:29 +01:00
kimkulling a9e8f65941 fix the build - add misisng forward declaration for aiVector3t. 2020-03-16 10:50:07 +01:00
Kim Kulling 27c125ef4d Add 2013-spcific compiler warning disabling statements. 2020-03-15 18:22:49 +01:00
Kim Kulling 856ca9f2dd Fix static-code findings, 2020-03-15 12:16:17 +01:00
Kim Kulling 976091a6f6 ix compiler warning for pragma statements. 2020-03-15 11:47:05 +01:00
Kim Kulling 9e91a33d76 fix review findings. 2020-03-15 10:28:37 +01:00
Kim Kulling 8b6f95ec30 Obj: apply clang format. 2020-03-15 10:21:08 +01:00
Kim Kulling 4210318a34
Merge branch 'master' into enable_vs_warning_all 2020-03-15 10:19:49 +01:00
Kim Kulling 0357333c81 fix all unittests. 2020-03-15 10:17:54 +01:00
kimkulling 255758e6ff fix read for precision-depending data. 2020-03-14 11:16:44 +01:00
kimkulling dc04759492 fix unittests part 2. 2020-03-13 17:00:14 +01:00
Kim Kulling 3c97447c9c
Merge branch 'master' into gltf2_blendshape_export 2020-03-13 13:26:08 +01:00
Yingying Wang 733e5343c8 export blendshape positions/normals in gltf2/glb2 2020-03-12 12:14:17 -07:00
kimkulling b295fda22c fix unittests part 1. 2020-03-12 17:38:42 +01:00
kimkulling 19b40397a9 fix misor findings. 2020-03-11 17:42:10 +01:00
Max Vollmer 3f75ef68ae Assimp guarantees in its docs that mRootNode is never NULL.
glTF2Importer::ImportNodes therefore must always create a root node, or throw an exception.

A GLTF2 file is invalid without a scene, so the importer should throw in that case. For GLTF2 files with a scene without nodes, it should create an empty root node.
2020-03-11 15:47:05 +00:00
Max Vollmer 84e060a816 Change: ExtractData throws exception instead of returning false if data is invalid.
Explanation: The return value of ExtractData is never checked anywhere in code. However if it returns false, outData remains uninitialized. All code using ExtractData assumes outData is initialized and proceeds to using it. I haven't encountered a real-life case where this goes wrong - but the simple fact that it can go wrong is a red flag. Instead of relying on every bit of code checking the return value and handling this properly, I think it makes much more sense to have ExtractData throw an exception. It obviously is an exceptional situation, and throwing makes sure that no code that doesn't explicitly handle such a scenario continues running and potentially causing harm.
2020-03-11 09:40:42 +00:00
kimkulling 69551e81ed Merge branch 'enable_vs_warning_all' of https://github.com/assimp/assimp into enable_vs_warning_all 2020-03-11 10:15:25 +01:00