Commit Graph

120 Commits (8ed18621dbb7d906ddbb79a366d1f987f826c5b4)

Author SHA1 Message Date
Malcolm Tyrrell 3deae8760c Optimize FindDegenerates so it doesn't explode 2020-11-02 14:43:35 +00:00
Malcolm Tyrrell b7c789da67 Stop concatenating std::strings. Use formatter. 2020-08-18 17:35:08 +01:00
Kim Kulling b94183376c
Fix possible overflow in new. 2020-08-05 17:56:44 +02:00
Malcolm Tyrrell 51150cb3df Ensure asserts are defined where expected. 2020-07-02 14:53:29 +01:00
Hill Ma 30f09e9fc0 Fix build when ASSIMP_DOUBLE_PRECISION is on.
Tested:
$ cmake -DASSIMP_DOUBLE_PRECISION=1 -DASSIMP_BUILD_MDL_IMPORTER=0 ..; make

The MDL importer is disabled due to the fact that there is some float-only code
in MDL. This also means bin/assimp and bin/unit would not link successfully with
the above build flags.
2020-06-28 17:36:21 -07:00
Kim Kulling ba6af9ff98
Merge branch 'master' into FindInvalidData 2020-06-25 16:41:24 +02:00
Kim Kulling 6205af4efb replace NULL and avoid ai_assert with more than 2 tests. 2020-06-23 21:05:42 +02:00
Ryan Styrczula 5717ea466f FindInvalidDataProcess: Mark removed meshes as "out"
There's a code path where an input scene only has a single mesh.
In this case, if ProcessMesh returns 2, we delete the mesh and move on
with the postprocessing. UpdateMeshReferences is not called and so the
deleted mesh is left dangling in nodes.

In a later step (SplitMesh in my testing), it then tries to deference a
null pointer and we explode.

With `out = true`, we can now hit the DeadlyImportError instead of a
segfault.
2020-06-22 17:24:16 -04:00
Kota Iguchi 6acaaee80f Check invalid vertex id for bone weight 2020-06-20 15:27:28 +09:00
Kim Kulling ecfca1d5c5
Merge branch 'master' into verboseLogging 2020-05-21 18:30:52 +02:00
Ryan Styrczula c4055d04b4 Fix double free caused in FindInvalidDataProcess
In debug builds, there's no issues, but in release, an invalid mesh that
is deleted in FindInvalidDataProcess will be double free'd when the
parent scene is destroyed.
2020-05-19 14:38:10 -04:00
Malcolm Tyrrell 87a7662bee More thinks using VERBOSE_DEBUG 2020-05-18 11:45:00 +01:00
Malcolm Tyrrell 90cdbd9d9a Fix ups 2020-05-15 17:46:50 +01:00
Malcolm Tyrrell e11d78596f Use verbose debug logging in certain places 2020-05-15 17:26:17 +01:00
Kim Kulling 89a865ce19
Merge branch 'master' into master 2020-05-06 22:07:39 +02:00
kkulling 4e16716924 Merge branch 'file-formatting' of https://github.com/aaronfranke/assimp into aaronfranke-file-formatting 2020-05-05 10:17:52 +02:00
Kim Kulling 638df2ceac
Merge branch 'master' into master 2020-04-25 12:07:06 +02:00
Kim Kulling c36b028412
fix type error for template deduction. 2020-04-21 16:39:18 +02:00
Alexey Medvedev 53990ffa42 Check for existed bone 2020-03-31 14:18:51 -07:00
Alexey Medvedev 3ef46b0edd Weights and bones count checks 2020-03-30 16:56:33 -07:00
Alexey Medvedev 5e93b9ea8b Fixed bone splitting with excessive amount of bones with 0 weight 2020-03-30 12:42:32 -07:00
napina bb4bcb442a Merge branch 'master' of https://github.com/assimp/assimp 2020-03-23 10:35:06 +02:00
napina f0243cc7f3 Changed AI_LMW_MAX_WEIGHTS*2 to 8 which is same thing. 2020-03-22 15:58:12 +02:00
napina d5d30c898b Optimized LimitBoneWeightsProcess. Added SmallVector to reduce heap allocations. Simplified algorithm and removed unnecessary copying. 2020-03-22 12:47:42 +02:00
Aaron Franke 1529f9518f
Make file formatting comply with POSIX and Unix standards
UTF-8, LF, no BOM, and newlines at the end of files
2020-03-21 02:34:12 -04: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 4210318a34
Merge branch 'master' into enable_vs_warning_all 2020-03-15 10:19:49 +01:00
kimkulling f3b6b78d4d small refactorings. 2020-03-09 10:55:32 +01:00
Kim Kulling 920535165d next fixed warnings 2020-03-01 13:15:45 +01:00
iamAdrianIusca a5524ffcd9 more changes 2020-02-18 19:02:14 +02:00
Kim Kulling 6e13381bdb next warnings. 2020-02-18 14:41:19 +01:00
Kim Kulling 22118dff1d Merge branch 'master' into enable_vs_warning_all 2020-02-16 15:37:48 +01:00
Kim Kulling c2bfbdacf4 fix more warnings. 2020-02-16 15:37:20 +01:00
Marc-Antoine Lortie 50334086cf Added missing texture types when searching for invalid textures. 2020-02-11 11:42:13 -05:00
Kim Kulling 8fd053315c
Update ArmaturePopulate.cpp
- Introduce tabs width of 4.
- Add missing brackets
- Use c++ comment blocks
2020-02-09 11:14:42 +01:00
Kim Kulling 407c550240
Merge branch 'master' into master 2020-02-09 11:05:35 +01:00
Marc-Antoine Lortie 8c09cd2ef3 Fixed TextureTypeToString defined multiple times.
- Moved TextureTypeToString to it's own file.
- Added new file to CMakeLists.txt.
- Added 6 missing values in TextureTypeToString.
- Added 6 missing aiTextureType enum values in assimp_cmd/Info.cpp.
2020-02-06 13:19:01 -05:00
Frooxius 29603128f4 Fixed invalid armature node population when there's mesh on a node with the same name as the bone 2020-02-06 10:28:38 +01:00
Kim Kulling 6c95ee145c
Merge branch 'master' into kimkulling-patch-1 2020-01-29 14:37:32 +01:00
Marc-Antoine Lortie 770c822621 Updated places to achFormatHint referencing array size. 2020-01-23 15:26:49 -05:00
Marc-Antoine Lortie 4e7e47bd43 Updated copyright dates.
Changed copyright end year to 2020 in every reference "Copyright (c) 2006-XXXX, assimp team".

Changed copyright end year to 2020 in every reference "Copyright (c) 2006-XXXX, ASSIMP Development Team".

Changed copyright end year to 2020 in LICENCE.rtf.

Changed copyright end year in CMakeFiles.txt files and any other places referencing Assimp with a copyright start and end year.
2020-01-20 08:53:12 -05:00
Kim Kulling 625357685c
Update EmbedTexturesProcess.cpp
closes https://github.com/assimp/assimp/issues/2874 : fix leaked texture buffer.
2020-01-09 22:04:46 +01:00
RichardTea 9cabeddf4f Odd Negative Scale: PretransformVertices
PretransformVertices postprocessing now reverses face order when transform is mirroring.
Fixes flip to backfacing in models that mirrored some nodes.

(Odd count of negative scale components, negative determinant)
2019-12-09 11:07:13 +00:00
RichardTea 193b02cdac Odd negative scale: OptimizeGraph
OptimizeGraph postprocessing now reverses face order when
node scale is mirroring.
Fixes flip to backfacing in models that mirrored some nodes.

(Odd count of negative scale components, negative determinant)
2019-12-09 10:42:50 +00:00
RichardTea 463573c771 Apply clangformat 2019-12-09 09:56:01 +00:00
Kim Kulling 7e222f0730 fix invalid cast. 2019-11-18 18:43:28 +01:00
Kim Kulling 17257cd2ae just a try, i dunno have a clue ... 2019-11-16 15:51:26 +01:00
RevoluPowered 02a63f8b10 Fixed template being used in file 2019-10-29 20:21:16 +00:00
RevoluPowered a9a0d4d29b Tidying order of function calls and fixed debug statements 2019-10-27 14:16:39 +00:00
RevoluPowered 212bcfe75c Test disable cache 2019-10-27 14:16:39 +00:00
RevoluPowered 9c8d835704 Explicitly use nullptr 2019-10-27 14:16:39 +00:00
RevoluPowered 514257f587 Added unit tests for ArmaturePopulate when used (added huestos model to tests)
Added clear documentation for this too to explain, you need to enable it to make it available

Signed-off-by: RevoluPowered <gordon@gordonite.tech>
2019-10-27 14:16:39 +00:00
RevoluPowered 46cdd81d75 Added ArmaturePopulate scale process for all formats 2019-10-27 14:16:39 +00:00
kimkulling 33af183bb8 Cleanup the public headers. 2019-10-11 13:27:36 +02:00
Victor Cebollada e0fee3d87b gltf2.0 importer - Support for mesh morph animations added.
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
2019-09-25 09:58:23 +01:00
Jennifer Buehler aa47a028c8 Fix UV texture coords generation along Z Axis 2019-09-23 11:22:20 +02:00
Kim Kulling ef54a00fc4 Use correct escape sequence for unsigned. 2019-09-22 09:12:37 +02:00
Malcolm Tyrrell 01d0f06d3a Make IsVerbose accessible outside the exporter 2019-08-30 11:42:23 +01:00
Kim Kulling 48f1f012eb
Merge branch 'master' into feature/fix-removal-of-bones 2019-08-25 09:34:20 +02:00
Gordon MacPherson 0d29203e24 Prototype unit system for assimp generic enough to be used across formats. 2019-08-21 21:41:41 +01:00
Gordon MacPherson 4bc5e8c262 Stop JoinVerticiesProcess removing bones from mesh as per #2596
Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2019-08-19 19:35:44 +01:00
Kim Kulling eb55a6a3cd
Update ScaleProcess.cpp
Fix review findings.
2019-08-19 20:24:01 +02:00
Gordon MacPherson fbb34b1de1 ScaleProcess overhauled to improve compatibility with animations and unit conversion.
./assimp Added arguments --gs to assimp command line option to enable global scaling.

No scaling for mScale of 1.0.

Co-Authored-By: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2019-08-19 17:36:57 +01:00
Ghanshyam Bhutra f69bf5f7ed
fix for div by zero reported by address sanitizer 2019-08-16 17:04:42 -07:00
Kim Kulling 0f66a917e5 Add unittest. 2019-06-24 21:37:53 +02:00
Kim Kulling 26bd54ae0b PostProcesswing: add gen-aabb process to postprocessing. 2019-06-23 20:24:32 +02:00
Kim Kulling 2da3a38d60 Fix the compile pass, still unresolved symbols. 2019-06-10 23:26:00 +02:00
Kim Kulling 2d985b92c9 Fix references in cmake file. 2019-06-09 18:43:56 +02:00
Kim Kulling 57c46db042 Reorg of code. 2019-06-06 14:45:43 +02:00