Commit Graph

2987 Commits (66c18cc4062ff68ef1fc7dbe1deb333c2be1f0e2)

Author SHA1 Message Date
Turo Lamminen cd64eae590 GenericProperty: Remove useless const qualifier from return value 2017-10-08 12:45:48 +03:00
Turo Lamminen 7e033c6cef FBX: Remove useless const qualifier from return value
const qualifier on primitive return type does nothing.
2017-10-08 12:45:02 +03:00
Kim Kulling b57011552b Merge branch 'master' into issue_1453 2017-10-07 19:08:52 +02:00
Kim Kulling f925e2cf4e Reproduce issue and remove assertion when a nullptr makes more sence 2017-10-07 19:08:20 +02:00
Marco Di Benedetto 9a79d243f9 added additional displacement texture token. 2017-10-07 12:36:02 +02:00
Jared Mulconry 326158633b Fixed warnings on MSVC caused by implicit conversions from double to float. 2017-10-06 18:23:28 +03:00
Turo Lamminen 50b43f76e1 OpenGEXImporter: Copy materials to scene 2017-10-06 18:23:28 +03:00
Turo Lamminen b841ed194b OpenGEXImporter: Store RefInfo in unique_ptr so they get automatically cleaned up 2017-10-06 18:23:28 +03:00
Turo Lamminen 775f984d99 OpenGEXImporter: Fix IOStream leak 2017-10-06 18:23:28 +03:00
Turo Lamminen 22b55d01a2 OpenGEXImporter: Store ChildInfo in unique_ptr so they get automatically cleaned up 2017-10-06 18:23:28 +03:00
Turo Lamminen 61278aa408 AMFImporter: Fix memory leak 2017-10-06 18:23:28 +03:00
Turo Lamminen 1f16ed9fd0 UnrealLoader: Fix IOStream leak 2017-10-06 18:23:28 +03:00
Kim Kulling c1f93a69ae Revert "WIP: Enable Travis clang build" 2017-10-06 15:42:05 +02:00
Kim Kulling c9b9dab1ff Merge pull request #1475 from jaredmulconry/master
Fixed warning on clang 3.9 caused by static data member in class template
2017-10-06 15:37:33 +02:00
Jared Mulconry 3803a5181c Fixed warnings on MSVC caused by implicit conversions from double to float. 2017-10-06 20:32:33 +11:00
Jared Mulconry 341222697a Address warnings on Clang 3.9 caused by having a static data member in a class template. 2017-10-05 23:55:10 +11:00
Turo Lamminen 3f0bb9c634 OpenGEXImporter: Copy materials to scene 2017-10-05 12:51:08 +03:00
Turo Lamminen 568003a0d3 OpenGEXImporter: Store RefInfo in unique_ptr so they get automatically cleaned up 2017-10-05 12:43:49 +03:00
Turo Lamminen e7ff7b167f OpenGEXImporter: Fix IOStream leak 2017-10-05 12:38:44 +03:00
Turo Lamminen b6d2b91799 OpenGEXImporter: Store ChildInfo in unique_ptr so they get automatically cleaned up 2017-10-05 12:35:17 +03:00
Turo Lamminen 316046f748 AMFImporter: Fix memory leak 2017-10-05 12:15:28 +03:00
Turo Lamminen 34acf47acd UnrealLoader: Fix IOStream leak 2017-10-05 12:15:28 +03:00
Turo Lamminen afce984228 FBXImporter: Add explicit instantiation of log_prefix so other FBX source files can see it 2017-10-05 12:15:25 +03:00
Turo Lamminen bf1aaf98f9 IFCImporter: Add explicit instantiation of log_prefix so IFCMaterial.cpp can see it 2017-10-05 12:15:11 +03:00
Kim Kulling cbca8f574e Merge pull request #1432 from turol/asan
Asan
2017-10-04 16:12:44 +02:00
Kim Kulling c3e9d6132c Merge pull request #1468 from assimp/issue_1467
closes https://github.com/assimp/assimp/issues/1467.
2017-10-03 09:58:56 +02:00
Jared Mulconry 5804667dbb Addressed some mismatched news/deletes caused by the new glTF2 sources. 2017-10-02 11:04:15 +03:00
Jared Mulconry 1eb7eceddf Addressed a number of memory leaks identified in unit tests by asan 2017-10-02 11:03:24 +03:00
Turo Lamminen 1095ec454b Fix delete / delete[] mismatches in glTF2 importer 2017-10-02 10:55:26 +03:00
Turo Lamminen efd861253d Fix delete / delete[] mismatches in MakeVerboseFormat 2017-10-02 10:55:26 +03:00
Turo Lamminen 5ecab20bd0 Fix delete / delete[] mismatch in glTFAsset 2017-10-02 10:55:26 +03:00
Kim Kulling 6ec25be0a6 OpenGEX: improve logging to be able to detect error-prone situations. 2017-10-02 09:41:01 +02:00
Kim Kulling 3f4663e369 closes https://github.com/assimp/assimp/issues/1467. 2017-10-02 09:33:51 +02:00
Jared Mulconry 9088deeb1d Eliminated all warnings under clang with default settings. One remains in the included zlib contrib project. 2017-09-30 23:29:56 +10:00
Kim Kulling c4e91eb33f add some asserts. 2017-09-30 10:47:23 +02:00
Kim Kulling 1c76962c98 closes https://github.com/assimp/assimp/issues/1450: use correct name of exporter to gltf2 2017-09-30 09:38:13 +02:00
Kim Kulling 9033071237 Obj: rename attribute from exporter. 2017-09-30 09:37:34 +02:00
Kim Kulling 5adc029225 Merge branch 'master' of https://github.com/assimp/assimp 2017-09-29 21:59:11 +02:00
Kim Kulling c42589460d closes https://github.com/assimp/assimp/issues/1459: fix out-of-boundary access error 2017-09-29 21:58:58 +02:00
Josh Faust febd611d48 Fix glTF2::Asset::FindUniqueID() when the input string is >= 256 chars 2017-09-27 18:41:35 -07:00
Jared Mulconry 79a5165106 Fixed unused variable warning by replacing them with descriptive comments 2017-09-24 21:46:15 +10:00
Jared Mulconry 8dabd76e03 Fixed a warning caused by aiVector3D appearing in a packed struct, causing it to fail to pack as requested. 2017-09-24 21:19:03 +10:00
Jared Mulconry 059a32654e Addressed warnings generated on MSVC across x86 and x64. 2017-09-24 19:29:43 +10:00
Kim Kulling b5ac248703 Merge pull request #1444 from turol/warnings
Clean up some more GCC warnings
2017-09-20 22:18:21 +02:00
Kim Kulling 81b94a1dca Merge pull request #1445 from Matter-and-Form/gltf2-alphaMode-fix
Fix glTF2 alphaMode storage and reading
2017-09-19 15:40:53 +02:00
Kim Kulling 5c44776532 Merge pull request #1447 from Matter-and-Form/gltf1-color-import-fix
[gltf1] Don’t ignore rgba(1,1,1,1) color properties
2017-09-19 15:40:00 +02:00
Kim Kulling adec1b2175 Merge pull request #1446 from Matter-and-Form/feature/gltf2-primitives
glTF2 primitives fixes
2017-09-19 15:39:11 +02:00
Kim Kulling d27e667f1e Merge branch 'master' of https://github.com/assimp/assimp 2017-09-19 00:32:50 +02:00
Kim Kulling af9596674d FBX: add missing inversion of postrotation matrix for fbx. 2017-09-19 00:31:41 +02:00
Daniel Hritzkiv 3e8955faf5
Don’t ignore rgba(1,1,1,1) color properties
Do not ignore rgba(1,1,1,1) material properties when importing glTF1. While a white diffuse color may be the default value for a default assimp material, `1,1,1,1` is a very explicit color value for ambient/specular/emissive color properties.

Closes #1434
2017-09-18 18:16:48 -04:00
Daniel Hritzkiv 798542d7bd
Formatting 2017-09-18 14:48:07 -04:00
Daniel Hritzkiv de0bf2ea96
Fix alphaMode storage and reading
alphaMode is now converted from a std::string to an aiString and back to std::string, since aiString is easier to store and retrieve from aiMaterial properties than std::string

Fixes issues of alphaMode being written out as `\fOPAQUE\0\0\0\0\0\0…`
2017-09-18 12:19:55 -04:00
Daniel Hritzkiv 8743d28ec5
SImplify mesh merging code
My assumption that primitives of different types (modes) can’t be in the same mesh was incorrect.
2017-09-18 12:16:30 -04:00
Daniel Hritzkiv 2efd2cdef8
tweaks to primitive merging logic; comments + formatting 2017-09-18 11:16:05 -04:00
Daniel Hritzkiv 814e8b3f8e
Formatting 2017-09-18 11:16:05 -04:00
Daniel Hritzkiv 28523232cf
Merge multiple meshes in a node into one mesh with many primtives; write out only one mesh per node
To do:
- clean up MergeMeshes
- see if there’s a way to do this earlier in the flow
2017-09-18 11:16:05 -04:00
Daniel Hritzkiv 5147acfe65
Revert "store node mesh vs. meshes"
This reverts commit a0d97505e5.
2017-09-18 11:16:04 -04:00
Turo Lamminen 982430c3ce BlenderDNA: Silence warning about inline function which is declared but not defined
It's a templated method which is meant to be specialized. The base version
is never called. Just remove 'inline' to make GCC shut up.
2017-09-18 15:21:51 +03:00
Turo Lamminen 40c308af44 glTF: Silence uninitialized variable warning
This is a false positive. 'jointNamesIndex' is either set by the loop
or the following conditional is false which also sets it. The undefined value
is never seen by the following code.
2017-09-18 15:18:45 +03:00
Turo Lamminen b74fc9495a PlyLoader: Fix operator precedence issue in header check
The previous version might read past end of buffer
2017-09-18 15:16:21 +03:00
Turo Lamminen 4652be8f18 FIReader: Silence uninitialized variable warning
This is a false positive. First time through the loop 'imod3' is always 0
so c1 is not used. It's also set so further iterations have a valid 'c1'.
If 'value' is empty the switch doesn't look at 'c1' either since 'imod3'
is still 0.
2017-09-18 14:59:55 +03:00
Turo Lamminen 41724ace2d Collada: Silence uninitialized variable warning
This is a false positive. Value of 'method' is only used if 'targetMeshes'
contains something and all paths through the first loop which add stuff
to 'targetMeshes' also set 'method'.
2017-09-18 14:10:58 +03:00
Jeremy Cowles c207e74534 Fix glTF 2.0 multi-primitive support
Previously, only one primitive was supported, in fact memory was corrupted
when more than one primitive was found per glTF mesh.

In this change, each primitive is unrolled as a new Assimp Mesh, resulting
in multiple Assimp meshes per node when multiple primitives exist per
glTF mesh. This is required in the general case, since glTF primitives can
have different material bindings and primitive modes.
2017-09-17 10:08:49 -07:00
Kim Kulling 484f73b179 Merge pull request #1437 from rmitton/sib-version
Added support for SIB models from Silo 2.5
2017-09-16 16:27:38 +02:00
Richard Mitton f602055da5 Added Silo 2.5 support
Silo 2.5 bumps the version number of SIB files for no apparent reason. Doesn't appear to be any other changes to the file format.
2017-09-15 12:40:38 -07:00
Richard Mitton 234ffc0ad6 Fixed truncated material names
The previous Unicode library change accidentally trimmed off the last character of SIB material names.
2017-09-15 12:39:58 -07:00
Turo Lamminen 01c50394ce FBXParser: Silence uninitialized variable warnings 2017-09-15 12:42:17 +03:00
Turo Lamminen f1998d52dc Importer: Whitespace cleanup to fix GCC misleading indentation warning 2017-09-15 12:41:53 +03:00
Turo Lamminen 046c229e48 AssbinExporter: Fix strict aliasing violation 2017-09-15 12:41:40 +03:00
Turo Lamminen f4a0ab81b1 AssbinExporter: Add Write specialization for aiColor3D 2017-09-15 12:41:13 +03:00
Turo Lamminen b9efc234d0 DefaultLogger: Whitespace cleanup to fix GCC misleading indentation warning 2017-09-15 12:40:07 +03:00
Turo Lamminen 0b140db0a4 glTFExporter: Silence uninitialized variable warning
This is a false positive, idx_srcdata_begin is only used if comp_allow
is true and in that case it's also initialized.
2017-09-15 12:39:58 +03:00
vkovalev123 58213804ff Update 3DSLoader.cpp
Fixed reading of CHINK_RGBF. If reading performs on x32 platform then reading will execute right, but on x64 it`s wrong because it will read 8 bytes instead 4.
2017-09-14 14:55:02 +03:00
Kim Kulling afd6c4d57d Revert "Asan" 2017-09-13 21:40:44 +02:00
Kim Kulling d139b4d180 Merge pull request #1423 from Matter-and-Form/feature/gltf2
glTF 2 Importer + glTF 2 Spec Conformity
2017-09-13 20:01:38 +02:00
Kim Kulling d49f86f1e7 Merge pull request #1427 from turol/asan
Asan
2017-09-13 19:38:44 +02:00
Turo Lamminen b6f122ff2c Fix delete / delete[] mismatch in glTFAsset 2017-09-13 11:31:05 +03:00
Kim Kulling 6a3b030094 MDP: fix encoding issues. 2017-09-12 21:16:59 +02:00
Kim Kulling b5f770e456 Merge branch 'master' of https://github.com/assimp/assimp 2017-09-12 19:07:21 +02:00
Kim Kulling e3163ec15e FBX: fix some minor findings. 2017-09-12 19:07:17 +02:00
Kim Kulling cbedc448c6 closes https://github.com/assimp/assimp/issues/1426: add Defines.h to include folder for install. 2017-09-12 18:59:38 +02:00
John Senneker 933bbb4f1c Manually read alphaMode material property 2017-09-12 11:55:52 -04:00
John Senneker eca008d5ec Properly move string passed to JSON writer 2017-09-12 11:55:22 -04:00
Daniel Hritzkiv b0da0796c8
Fix Segfault caused by losing pointer to std::string
Keep std::string alive
2017-09-12 10:07:15 -04:00
Daniel Hritzkiv cde29c937c
Formatting 2017-09-11 11:02:16 -04:00
Daniel Hritzkiv b1a5ca4516
Use `forceNumber` argument of `WriteAttrs` to write correct attribute names, instead 2017-09-11 11:02:16 -04:00
Daniel Hritzkiv 990fe143a1
Fix mesh primitive’s attributes’ names
Per spec

TEXCOORD -> TEXCOORD_0
COLOR -> COLOR_0
JOINTS -> JOINTS_0
WEIGHTS -> WEIGHTS_0

Remove JOINTMATRIX since it’s not supported (and doesn’t seem to be output, anyway)

TANGENT should be added at a later date
2017-09-11 11:02:16 -04:00
Daniel Hritzkiv 816e6909ca
Remove KHR_binary_glTF code
Binary glTF is now part of the glTF2 spec. However, it’s implemented incorrectly, so will be temporarily removed
2017-09-11 11:02:16 -04:00
Daniel Hritzkiv b4f5033d89
Remove compresssed file format flag 2017-09-11 11:02:16 -04:00
Daniel Hritzkiv d518289e72
more specific token search for Collada Loader
collada can appear in many files, such as glTFs via the “generator” field (in the form of collada2gltf)
2017-09-11 11:02:15 -04:00
Daniel Hritzkiv 5cb13aa4b3
Load gltf .bin files from correct directory 2017-09-11 11:02:15 -04:00
Daniel Hritzkiv a438ece655
Remove premultipliedAlpha from gltf2 2017-09-11 11:02:15 -04:00
John Senneker 140b903d7a
Fix parsing of glTF version
Handle version as int in gltf
Fix format specifiers in glTF version parser
2017-09-11 11:02:15 -04:00
John Senneker 19876e9822
Add support for importing both glTF and glTF2 files 2017-09-11 11:02:15 -04:00
John Senneker 2ee7991558
Restrict search for OFF header to first 3 bytes 2017-09-11 11:02:14 -04:00
Daniel Hritzkiv a5e8e0b2bd
Remove commented out code 2017-09-11 11:02:14 -04:00
Daniel Hritzkiv 0a8183531e
Set alphaMode, baseColorFactor opacity when model’s opacity isn’t 1 2017-09-11 11:02:14 -04:00
Daniel Hritzkiv 37582131f4
Set the metallicFactor to 0 if source file doesn’t have metallicFactor
Otherwise, the models have full metallic materials and appear very dim
2017-09-11 11:02:14 -04:00
Daniel Hritzkiv da6a252efb
Fix METALLIC_FACTOR typo 2017-09-11 11:02:14 -04:00
Daniel Hritzkiv 3ba00ca421
Define gltf material property names as constants 2017-09-11 11:02:14 -04:00
Daniel Hritzkiv 54dd4804cd
Fix indentation 2017-09-11 11:02:14 -04:00
Daniel Hritzkiv 44757af34a
Implement pbrSpecularGlossiness property as Nullable 2017-09-11 11:02:13 -04:00
Daniel Hritzkiv 03cfa04ee4
Define default material values as static constants
for reuse
2017-09-11 11:02:13 -04:00
Daniel Hritzkiv 1a5823700f
Remove need for Has by returning an empty Ref in Get 2017-09-11 11:02:13 -04:00
Daniel Hritzkiv 21259e0835
Use different form of index accessor 2017-09-11 11:02:13 -04:00
Daniel Hritzkiv 37527849b7
Export material names properly 2017-09-11 11:02:13 -04:00
Daniel Hritzkiv a9c4fa84b5
Sampler improvements; Add new LazyDict method
Samplers are now imported into assimp internal format from textures;
Samplers have defaults as per spec;
Sampler enums are strongly typed with UNSET values;
Samplers are exported properly;
Sampler filters are exported as well;
Samplers are re-used across textures on export
Default sampler values are not written
2017-09-11 11:02:12 -04:00
Daniel Hritzkiv 7245cceead
Set default values on Sampler 2017-09-11 10:55:51 -04:00
Daniel Hritzkiv 2abdbdb55e
Fix unused CopyValue 2017-09-11 10:55:51 -04:00
Daniel Hritzkiv 63ef19d9ad
Export extensions 2017-09-11 10:55:51 -04:00
Daniel Hritzkiv d277995a97
Formatting 2017-09-11 10:55:51 -04:00
Daniel Hritzkiv 7f01e3f48f
Only export byteStride if not 0 2017-09-11 10:55:50 -04:00
Daniel Hritzkiv a0d97505e5
store node mesh vs. meshes
glTF nodes can only hold one mesh. this simply assigns to and check’s a Node’s Mesh
2017-09-11 10:55:50 -04:00
Daniel Hritzkiv ab08a7c3cb
reenable animation and skins exports
Currently incorrect, however. May need to be removed
2017-09-11 10:55:50 -04:00
Daniel Hritzkiv f09892ab63
Write specularGlossiness textures on the specularGlossiness object 2017-09-11 10:50:39 -04:00
Daniel Hritzkiv feee7528d6
Make sure `on` flag for specularGlossiness is being persisted 2017-09-11 10:50:39 -04:00
Daniel Hritzkiv 8bef546b41
mention pbrSpecularGlossiness support 2017-09-11 10:50:39 -04:00
Daniel Hritzkiv 2d54019b8f
Remove OPEN3DGC and compression references 2017-09-11 10:50:39 -04:00
Daniel Hritzkiv 562920fbb8
Changes to GLTF2 materials
pbrMetallicRoughness and pbrSpecularGlossiness as structs; persist textureinfo properties from start to finish; persist pbrSpecularGlossiness (via extensionsUsed) usage from start to finish
2017-09-11 10:50:39 -04:00
Daniel Hritzkiv 7532d6aac1
Remove Light, Technique references 2017-09-11 10:50:38 -04:00
Daniel Hritzkiv 863458cd4a
Start removing materials common, and adding pbrSpecularGlossiness 2017-09-11 10:50:38 -04:00
Daniel Hritzkiv 7615a97cd3
Remove redundant function 2017-09-11 10:50:38 -04:00
Daniel Hritzkiv 0cf69479c3
Use `!ObjectEmpty()` vs. `MemberCount() > 0` 2017-09-11 10:50:38 -04:00
Daniel Hritzkiv 11cb9ac139
Working read, import, export, and write of gltf2 (pbr) material 2017-09-11 10:50:38 -04:00
Daniel Hritzkiv b42d785afe
Start managing and importing gltf2 pbr materials 2017-09-11 10:50:38 -04:00
Daniel Hritzkiv 67eb3b0608
temporarily disable gltf exporting of animations and skins 2017-09-11 10:50:38 -04:00
Daniel Hritzkiv 39172feb3e
Start reading pbr materials 2017-09-11 10:50:37 -04:00
Daniel Hritzkiv 4d59dee5ea
Cache retrieved items via an original index map 2017-09-11 10:50:37 -04:00
Daniel Hritzkiv 47c7c3cf50
Disambiguate Get methods 2017-09-11 10:50:37 -04:00
Daniel Hritzkiv f814acf33a
Update glTF2 Asset to use indexes 2017-09-11 10:50:37 -04:00
Daniel Hritzkiv 63d3655f1b
Duplicate gltfImporter as gltf2Importer; Include glTF2 importer in CMake List 2017-09-11 10:50:36 -04:00
Jared Mulconry 3c1cda0b8c Merge branch 'master' of github.com:assimp/assimp into issue_1065 2017-09-11 00:17:23 +10:00
Jared Mulconry 698cd5826d Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3. 2017-09-11 00:16:26 +10:00
Jared Mulconry e40cd6c13c Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3. 2017-09-11 00:09:40 +10:00
Jared Mulconry 1167edaeca Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3. 2017-09-11 00:09:35 +10:00
Jared Mulconry 6db0a63d6e Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3. 2017-09-10 19:13:12 +10:00
Jared Mulconry 6e02bcd8d6 Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3. 2017-09-10 19:10:59 +10:00
Jared Mulconry b7f1277175 Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3. 2017-09-10 19:07:37 +10:00
Jared Mulconry 98532b45bf Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3. 2017-09-10 19:04:44 +10:00
Jared Mulconry 97b67d5cb5 Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3. 2017-09-10 18:47:24 +10:00
Amit Cirt 2ec46cc188 fix name lost in mesh and nodes when load with aiProcess_PreTransformVertices flag 2017-09-09 19:04:15 +03:00
Kim Kulling c143d2e02c closes https://github.com/assimp/assimp/issues/1404: set name with merged meshes for output mesh. 2017-09-07 20:30:17 +02:00
IOhannes m zmölnig 3de9bbb73d fixed spelling error 2017-09-02 19:44:51 +02:00
Kim Kulling b4da9c4f56 Fix review findings: remove unused includes 2017-08-31 11:30:31 +02:00
Kim Kulling 00e3b03c5b closes https://github.com/assimp/assimp/issues/1406: fix merge issue + improve 3MF-tests 2017-08-31 11:04:13 +02:00
Alexander Gessler f8ef94095a Update version check in FBX reader to check for version >= 7500 instead of exactly 7500. 2017-08-29 15:41:25 +02:00
Kim Kulling 7151cf117b Merge branch 'master' of https://github.com/rickomax/assimp into rickomax-master 2017-08-25 16:47:08 +02:00
Kim Kulling ce9c8a4efc Merge pull request #1403 from kebby/fbx_anim_fix
FBX importer: Use actual min/max of anim keys when start/stop time is missing
2017-08-25 13:33:09 +02:00
Tammo Hinrichs 12a28d33ce FBX importer: try a constant again (ll suffix this time) 2017-08-25 12:14:03 +02:00
Tammo Hinrichs 9a12b6ef0b FBX importer: Back to INT64_MIN but include <stdint.h> also. 2017-08-25 11:17:07 +02:00