Commit Graph

3139 Commits (909c0a820ae35055d73199461a2d8c85e4fb860f)

Author SHA1 Message Date
Kim Kulling 9bd9b3d99c
Merge branch 'master' into export_3mf 2017-11-28 09:24:02 +01:00
Kim Kulling 4b6e49ca7b
Update D3MFExporter.h
Fix review findings.
2017-11-28 09:09:04 +01:00
Kim Kulling 4f972661e8
Update D3MFExporter.cpp
Fix review findings.
2017-11-28 09:08:16 +01:00
Kim Kulling 7a395e274f
Merge branch 'master' into fix/gltf2-transforms 2017-11-28 08:48:19 +01:00
Kim Kulling 8ce5985aa0
Merge branch 'master' into fix/gltf2-preserve-node-names 2017-11-28 00:50:07 +01:00
Kim Kulling 09f7769820 remove unused attribute. 2017-11-27 23:36:32 +01:00
Kim Kulling 8e413ac1e3
Merge branch 'master' into export_3mf 2017-11-27 22:50:17 +01:00
Kim Kulling 7280dec838 fix unittest. 2017-11-27 22:46:57 +01:00
Kim Kulling 3dfca3bc84 3MF: add export to a given archive. 2017-11-27 21:48:33 +01:00
awefers 0031165789
Add support for tangents in glTF2.0 import
Closes #1562
2017-11-27 13:45:40 -05:00
awefers 0b04ae1d91
Preserve node names when importing glTF2.0
Closes #1522
2017-11-27 11:58:19 -05:00
awefers e53d4735b0
Fix transform matrices multiplication order per glTF2.0 spec
Closes #1568
2017-11-27 11:32:05 -05:00
Kim Kulling 623b5a515a
Merge branch 'master' into fix-typo-gltf 2017-11-25 20:11:49 +01:00
Alexandre Avenel eb452b28a2 Fix warning on MSVC14 2017-11-25 11:38:12 +01:00
Alexandre Avenel d529dd17f9 Fix warning cast double to float 2017-11-24 22:29:58 +01:00
Alexandre Avenel 273f6b0267 Fix MSVC14 warning cast double to real 2017-11-24 22:13:38 +01:00
Alexandre Avenel f80e8b39a1 Fix warning C4138: '*/' found outside of comment on MSVC14 2017-11-24 22:08:50 +01:00
Alexandre Avenel c63263b025 Fix typo on gltf2 camera parameters 2017-11-24 22:02:47 +01:00
Kim Kulling 0bdb375804 Add missing file export into archive. 2017-11-24 18:59:37 +01:00
Kim Kulling 09a5946dbd Prepare archive structure. 2017-11-23 22:47:18 +01:00
Kim Kulling d180cfcba5
Merge branch 'master' into master 2017-11-22 16:01:16 +01:00
Kim Kulling e35f789ace
Merge branch 'master' into scene_combiner_crash 2017-11-22 13:46:14 +01:00
Kim Kulling 454b8919b0 use one header for all xml-tags. 2017-11-21 21:34:25 +01:00
Kim Kulling b474e75e29 3Mf-Export: add prototypes for relations and rest of 3MF-document. 2017-11-21 18:41:16 +01:00
Kim Kulling a7be5b527f add missing return statement. 2017-11-20 23:53:53 +01:00
Kim Kulling 9ca7b00280 Merge branch 'master' into export_3mf 2017-11-20 22:36:50 +01:00
Kim Kulling c22b4acd47 3MF: Export initial commit. 2017-11-20 22:36:17 +01:00
Kim Kulling 70d9df868d
Merge branch 'master' into patch-12 2017-11-20 22:23:47 +01:00
Kim Kulling ba3acd7459
Merge branch 'master' into patch-12 2017-11-20 19:56:14 +01:00
Patrick Dähne a05d74a281 [glTF2] Moved byteStride from accessor to bufferView 2017-11-20 19:01:28 +01:00
Kim Kulling beff88228d
Merge branch 'master' into master 2017-11-20 18:56:10 +01:00
Patrick Dähne 6cbfd5b977 [glTF2] Implemented reading binary glTF2 (glb) files 2017-11-20 14:59:05 +01:00
Mika Rautio 9f1dce8e57
Merge branch 'master' into master 2017-11-20 10:27:11 +02:00
Mika Rautio 4fb5038fb1 Add support for building Mac OS X Framework bundles 2017-11-20 00:10:05 +02:00
Kim Kulling 2a9f79f958 check for 0 properties before copy them 2017-11-19 19:05:51 +01:00
Kim Kulling 55c9761228
Merge branch 'master' into patch-12 2017-11-19 18:25:22 +01:00
Kim Kulling 9707fde709 check for nullptr dereferencing before copying scene data 2017-11-19 17:41:31 +01:00
Kim Kulling 65d6daa414
Merge branch 'master' into patch-13 2017-11-18 20:36:05 +01:00
Kim Kulling 1a1d96d3e2 Merge branch 'master' into fix_android 2017-11-18 18:32:58 +01:00
Kim Kulling a8e65a1e8a Fix android build. 2017-11-18 18:32:16 +01:00
Turo Lamminen 8ae7231654 Blender: Silence warning about uninitialized member 2017-11-18 16:50:45 +02:00
Turo Lamminen 2c8cc1f732 BlenderDNA: Silence warning about uninitialized member 2017-11-18 16:49:03 +02:00
Turo Lamminen bcffa28a33 MDLImporter: Don't take address of packed struct member 2017-11-18 16:39:43 +02:00
Turo Lamminen 1067ae4bfa FIReader: Fix strict-aliasing warnings 2017-11-18 15:54:40 +02:00
Turo Lamminen c1515db56f Blender: Fix strict-aliasing warnings 2017-11-18 15:50:56 +02:00
Giuseppe Barbieri 703d046fd9
Update ValidateDataStructure.cpp 2017-11-18 00:34:00 +01:00
Giuseppe Barbieri fc360b9cc8
Update ValidateDataStructure.h 2017-11-18 00:05:17 +01:00
Giuseppe Barbieri b428c66f39
Update ValidateDataStructure.h 2017-11-17 23:10:05 +01:00
Kim Kulling 07a99e0843
Merge branch 'master' into issue_1513 2017-11-16 17:32:34 +01:00
Giuseppe Barbieri d9965f6220
Update Importer.cpp 2017-11-16 14:42:20 +01:00
Kim Kulling 7db10022e9 closes https://github.com/assimp/assimp/issues/1513: fix assimp for cross compile for android 2017-11-15 21:26:25 +01:00
Turo Lamminen f475803f93 X3DImporter: Add assertions to silence static analyzer warnings 2017-11-15 11:45:21 +02:00
Turo Lamminen 66c18cc406 TerragenLoader: Remove unused variable 2017-11-15 11:45:21 +02:00
Turo Lamminen e47bf932e8 SIBImporter: Add assertions to silence static analyzer warnings 2017-11-15 11:45:21 +02:00
Turo Lamminen 583d3f88b8 FBX: Remove dead assignment 2017-11-15 11:45:21 +02:00
Turo Lamminen ef0af40f90 IFC: Remove dead code 2017-11-15 11:45:21 +02:00
Turo Lamminen b49a4e1338 PLY: Remove dead assignment and reduce scope of a variable 2017-11-15 11:45:21 +02:00
Turo Lamminen 97843f19d2 OpenGEX: Add assertion to silence a static analyzer warning 2017-11-15 11:45:21 +02:00
Turo Lamminen f470b8466f GLTF2: Fix signed/unsigned warning 2017-11-15 11:45:21 +02:00
Turo Lamminen f90019bc1e NFF: Add assertions to silence static analyzer warnings 2017-11-15 11:45:21 +02:00
Turo Lamminen 3f299b2a2b NFF: Split up some complicated assignments 2017-11-15 11:45:21 +02:00
Turo Lamminen d24e0d44b2 Raw: Fix misleading indentation warning 2017-11-15 11:45:21 +02:00
Turo Lamminen 2b93a210c9 NFF: Reduce scope of a variable 2017-11-15 11:45:21 +02:00
Turo Lamminen 940449d837 LWO: Reduce scope of a variable 2017-11-15 11:45:21 +02:00
Turo Lamminen a276a02726 IRRLoader: Fix confusing boolean casting 2017-11-15 11:45:21 +02:00
Turo Lamminen 437816fc33 AssbinExporter: Add assertion to silence a static analyzer warning 2017-11-15 11:45:21 +02:00
Turo Lamminen 4c9f169109 ASE: Add assertion to silence a static analyzer warning 2017-11-15 11:45:21 +02:00
Turo Lamminen 856d402b59 AMFImporter: Add assertion to silence a static analyzer warning 2017-11-15 11:45:21 +02:00
Turo Lamminen 2c7770eed5 AMFImporter: Add a block 2017-11-15 11:45:21 +02:00
Turo Lamminen bd0d47c5fc Whitespace 2017-11-15 11:45:21 +02:00
Turo Lamminen a7fccf8f33 OptimizeGraph: Fix possible null pointer dereference 2017-11-15 11:45:21 +02:00
Turo Lamminen c51b92cfa3 RemoveRedundantMaterials: Add assertion to silence a static analyzer warning 2017-11-15 11:45:21 +02:00
Turo Lamminen 95f2319b41 ImproveCacheLocality: Add assertion to silence a static analyzer warning 2017-11-15 11:45:21 +02:00
Turo Lamminen c774e864a0 Remove some dead assignments 2017-11-15 11:45:21 +02:00
Turo Lamminen 266e3b29a8 RemoveRedundantMaterials: Set pointer to nullptr after deleting it 2017-11-15 11:45:21 +02:00
Turo Lamminen 76919e87ea fast_atof: Silence some uninitialized variable warnings 2017-11-15 11:45:21 +02:00
Kim Kulling 24b728b3ea FindDegeneratives: adapt unittests and add configs 2017-11-12 22:09:18 +01:00
Kim Kulling 9206d1b62b Merge branch 'master' into issue_216 2017-11-12 11:04:51 +01:00
Kim Kulling 005b537324 unittests: add VS-based source groups for the unittests. 2017-11-10 20:40:00 +01:00
Kim Kulling de1ec4ee5d
Merge branch 'master' into gltf2-mesh-export-fix 2017-11-10 19:07:46 +01:00
Unknown 12dbbd4ce9 Misc. typos
Some are doxy comments, some are just trivial source comment typos. 
Found using `codespell -q 3 --skip="./contrib" -I ../assimp-whitelist.txt`
whereby whitelist contained:
```
childs
iff
lod
nto
ot
whitespaces
```
2017-11-09 17:19:26 -05:00
Kim Kulling ad2ff9fd71 check for area test if the face is a triangle. 2017-11-09 21:40:10 +01:00
Kim Kulling 30e06f7437 closes https://github.com/assimp/assimp/issues/216: check the area of a triangle to check if its degenerated or not. 2017-11-09 21:31:16 +01:00
Daniel Hritzkiv 9ec117d0bc
Fix export of deleted meshes; Add LazyDict::Remove method
When I was merging a node’s multiple meshes into that node’s first mesh’s primitives, I was deleting the merged meshes from the node.

However, I wasn’t deleting the merged meshes from the mAsset->meshes Dict, causing the gltf2 export to contain extra unreferenced meshes and duplicate primitives.

This new code adds a new method to LazyDict, which removes the object from it, taking care to update indexes of the subsequent objects. This change also requires that `Ref`s of `Mesh`es (stored in node->meshes) have their indexes updated.
2017-11-08 18:31:32 -05:00
Kim Kulling 5bc4e73727
Merge branch 'master' into issue_1292 2017-11-08 22:52:46 +01:00
Kim Kulling ab639a71ae
Merge branch 'master' into issue_1315 2017-11-08 21:09:02 +01:00
Kim Kulling 36475bf868 closes https://github.com/assimp/assimp/issues/1292: export class subdivision 2017-11-08 20:50:16 +01:00
Kim Kulling cdfd4b9702 closes https://github.com/assimp/assimp/issues/1315: check in exporting against out-of-bounds-access . 2017-11-08 20:44:53 +01:00
Kim Kulling 6954c7d75b
Merge branch 'master' into master 2017-11-08 18:34:25 +01:00
Kim Kulling fe55bc9996
Update ColladaExporter.cpp
fix build
2017-11-08 18:34:16 +01:00
Kim Kulling 6b826fecfd
Merge branch 'master' into issue_1251 2017-11-08 01:07:35 +01:00
Kim Kulling f41ed2f41f closes https://github.com/assimp/assimp/issues/1251: use correct lookup for utf32. 2017-11-08 01:07:04 +01:00
Kim Kulling 29cf414468
Merge branch 'master' into md2_fix 2017-11-07 22:03:02 +01:00
Kim Kulling 75fdd25b6b
Merge branch 'master' into issue_104 2017-11-07 11:27:06 +01:00
Kim Kulling da7ce89ff2
Update STLLoader.cpp
add missing const.
2017-11-07 10:47:27 +01:00
Kim Kulling b87e7643d2
Update STLLoader.cpp
Fix memory-alignment bug.
2017-11-07 10:42:51 +01:00
Kim Kulling 4ff2592747
Update STLLoader.h
Fixed a typo.
2017-11-07 00:31:09 +01:00
Kim Kulling 9a9f18bbed closes https://github.com/assimp/assimp/issues/104: deal with more solids in one STL file. 2017-11-06 22:30:07 +01:00
Kim Kulling 4a4f3fddc7 closes https://github.com/assimp/assimp/issues/213: log an error instead of letting the fbx-importer crash. 2017-11-05 22:52:07 +01:00
Kim Kulling ab3cf3687c
Merge branch 'master' into UnitTest_X3D 2017-11-05 18:10:10 +01:00
Kim Kulling 2929a27edc add unittest for x3d-importer. 2017-11-05 17:41:26 +01:00
Kim Kulling 02b042d78e closes https://github.com/assimp/assimp/issues/1351: use correct name for obj-meshname export for groups. 2017-11-05 16:35:22 +01:00
Kim Kulling a33e115fd1 fix mem-lead: face will be not released in case of an error. 2017-11-04 18:26:30 +01:00
Kim Kulling c9ada44ab5 Fix memory leak in case of an error. 2017-11-04 17:05:23 +01:00
Kim Kulling c700c08fa5
Merge branch 'master' into master 2017-11-04 10:45:57 +01:00
Kim Kulling b7bd006304
Merge branch 'master' into ObjExporter_nomtl 2017-11-04 09:32:50 +01:00
Kim Kulling 4587e63e2f
Merge branch 'master' into fix_trivial_warnings 2017-11-03 20:05:16 +01:00
Daniel Hritzkiv 2922753589
Return early when element is TextureFile
In cases where the TextureFile name would start with an integer, `strtoul10` would parse that number and incorrectly set `numOccur` to that number. This caused PLY parsing to fail for vertex positions.

Since TextureFile is a single line, and does not have any follow-up lines, it’s okay to return early
2017-11-03 11:50:28 -04:00
Kim Kulling d279a3cc02
Merge branch 'master' into fix_trivial_warnings 2017-11-03 10:35:02 +01:00
Thomas Lemaire 5b76a31485 fix trivial warnings
mainly unused parameter and unused function
some parameters are indeed used in a debug built, I used the
(void)(param) trick
warnings reported by clang 4
2017-11-02 11:13:52 +01:00
thomas-lemaire 931542bf3c
Merge branch 'master' into ObjExporter_nomtl 2017-11-02 10:46:57 +01:00
Daniel Hritzkiv e52e44ea07
Formatting 2017-10-31 15:18:08 -04:00
Daniel Hritzkiv cc4531459f
Set mNumUVComponents to 0 when deleting texture coordinate sets 2017-10-31 15:14:21 -04:00
Kim Kulling 8be196f77d closes https://github.com/assimp/assimp/issues/1490 : fix invalid access to mesh array when the array is empty. 2017-10-31 14:03:03 +01:00
Kim Kulling af4556d569 only scale the root node because this will rescale all children nodes as well. 2017-10-31 13:08:24 +01:00
Kim Kulling 64ee21024b Add missing file. 2017-10-31 13:07:07 +01:00
Kim Kulling ae020281e2 Add unittest 2017-10-31 12:24:32 +01:00
Lars Jørgen Solberg 711050de8a fix frame pointer arithmetic 2017-10-30 19:08:51 +01:00
thomas-lemaire 4d09e61b13
Merge branch 'master' into master 2017-10-30 11:41:25 +01:00
Victor NG 99b9ba4c11
Merge branch 'master' into master 2017-10-30 16:33:47 +08:00
Victor NG aca8f068d0
Update ColladaExporter.cpp 2017-10-30 16:29:57 +08:00
Kim Kulling bbeb9dd640 Use correct lookup if scaling is enabled. 2017-10-29 23:18:37 +01:00
Kim Kulling f49de6ecfe closes https://github.com/assimp/assimp/issues/1514: add postprocess step for scaling 2017-10-29 20:28:59 +01:00
Thomas 18cef9b391 [ObjExporter] add a "no mtl" version of the obj exporter 2017-10-27 10:14:38 +02:00
Daniel Hritzkiv 8b73ec7541
Fix shininess to roughness conversion; Add comments
Was accidentally flipping to value (1 - x) twice, thus negating the effect.
2017-10-26 11:33:33 -04:00
Kim Kulling bfa33b50ad Merge branch 'master' into gltf2-materials 2017-10-24 10:40:20 +02:00
Alexandre Avenel cc8374dd80 Return exception when obj file contains invalid face indice 2017-10-21 20:58:00 +02:00
Victor NG 90ba199ad4 Update ColladaExporter.cpp 2017-10-21 18:28:14 +08:00
Victor NG cd4ef0a2e9 Update ColladaExporter.h 2017-10-21 18:15:46 +08:00
ndotl 8cf61c3c89 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow 2017-10-20 15:22:49 +02:00
Daniel Hritzkiv 6e88838602
powf -> pow
Fix build errors on linux
2017-10-19 16:21:29 -04:00
Daniel Hritzkiv 40147d253d
Prefer “BLEND” over “MASK” as an alphaMode default
“BLEND” is a much nicer alphaMode value (if the hardware supports it – not a steep requirement) than “MASK” as mask is either fully opaque or fully transparent, depending on the alphaCutoff. This matches many other converters’ alphaMode default.
2017-10-19 16:21:29 -04:00
Daniel Hritzkiv 89358458f0
Approximate specularity / glossiness in metallicRoughness materials
Before, models (of traditional lighting models) with specularity/glossiness would be completely flat when exported to metallicRoughness. These changes approximate glossiness (as an inverse of roughness, with specular intensity as a multiplier) both reading from gltf2 and writing to gltf2.
2017-10-19 16:21:29 -04:00
Daniel Hritzkiv a898c1f2d1
SpecularFactor import and export improvements
The changes here (which only apply to reading from or writing to pbrSpecularGlossiness) will:

- store and read specular color on `AI_MATKEY_COLOR_SPECULAR ` rather than `AI_MATKEY_GLTF_PBRSPECULARGLOSSINESS_SPECULAR_FACTOR`
- store and read specular texture from `aiTextureType_SPECULAR` rather than `AI_MATKEY_GLTF_PBRSPECULARGLOSSINESS_SPECULARGLOSSINESS_TEXTURE`. Even though pbrSG’s specularGlossiness texture uses the alpha channel for glossiness, it will still work well enough with just the RGB channels of the image
2017-10-19 16:21:29 -04:00
Daniel Hritzkiv c71790c78d
Diffuse color and diffuse texture import and export improvements
These changes do a better of importing and exporting baseColor colors and textures, as well as diffuse colors and textures (in the case of pbrSpecularGlossiness)

- baseColorFactor will be stored on both `$clr.diffuse` and `$mat.gltf.pbrMetallicRoughness.baseColorFactor`, and will be extracted from `$mat.gltf.pbrMetallicRoughness.baseColorFactor` first, and falling back to `$clr.diffuse`. The behaviour for baseColorTexture is similar
- pbrSG’s diffuseFactor will now only be store on `$clr.diffuse` (overwriting any previous assignments to `$clr.diffuse`, e.g. from metallicRoughness’ baseColorFactor, as diffuseFactor is more analogous to diffuse color than baseColor), and will only extract from `$clr.diffuse`
2017-10-19 16:21:16 -04:00
Daniel Hritzkiv 5eaf083fbd
Fix output of glTF 1 version string
Was writing out “\u0001” instead of “1.0” as the data types were incorrect
2017-10-19 12:43:52 -04:00
Kim Kulling b2eb599176 Update ColladaExporter.cpp
Retrigger travis.
2017-10-16 18:51:25 +02:00
Kim Kulling 44ad80201c Merge branch 'master' into adsk-contrib-fix-std-stream-overflow 2017-10-14 21:47:21 +02:00
Jared Mulconry f8c4002294 Fixed a divide by zero error in IFCBoolean that was latent, but nevertheless a bug 2017-10-14 18:46:19 +03:00
Turo Lamminen 9a6b141568 FBX: Replace bad pointer casting with memcpy 2017-10-14 18:46:19 +03:00
Turo Lamminen 7cbb5f4d3b B3DImporter: Replace bad pointer casting with memcpy 2017-10-14 18:46:19 +03:00
Kim Kulling e662f2dc6f Blender: fix short overflow. 2017-10-13 22:41:38 +02:00
Kim Kulling e79848ff79 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow 2017-10-11 13:49:47 +02:00
Jared Mulconry 3e7dbb5dfb Merge branch 'master' of github.com:assimp/assimp into appveyor 2017-10-11 19:06:29 +11:00
Kim Kulling a1b79e23e6 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow 2017-10-10 19:33:07 +02:00
Kim Kulling c128e7e56c Merge branch 'master' into issue_1453 2017-10-10 18:20:22 +02:00
Jared Mulconry fa91a0f64c Another minor source change, this time even more minor than the last. Let's see what the cache can do with this. 2017-10-10 22:45:45 +11:00
Jared Mulconry 1497cc27b2 Cleaned up the whitespace again. Let's see how the cache does. 2017-10-10 22:08:13 +11:00
Jared Mulconry b8ad03baa1 Because I have to change a file somewhere to properly test the cache on AppVeyor, I've made some whitespace a bit better. 2017-10-10 19:45:57 +11:00
ndotl 7c8e8e04fa Merge branch 'master' into adsk-contrib-fix-std-stream-overflow 2017-10-09 16:00:46 +02:00