Kim Kulling
e5747dad9b
First concepts
2022-04-05 20:07:22 +02:00
Filip Lundgren
4175198d04
Detect Roughness factor exported by Blender
...
Matches the logic used by Blender's own FBX exporter / importer.
2022-03-26 22:33:10 +01:00
kimkulling
26598dc6bd
Forget to save file.
2022-03-09 11:00:05 +01:00
kimkulling
76e10b96fc
Fix missing members and do some small refactorings.
2022-03-09 10:51:37 +01:00
sola
c73ff82fc4
FBXConvert::ConvertMeshMultiMaterial: allocate memory using variable count_vertices
2022-02-25 19:58:44 +08:00
Kim Kulling
76a7614c4b
Adapt ai_epsilon to code
2022-02-16 20:07:27 +01:00
Kim Kulling
067c5d9ec4
Refactoring: add usage of ai_epsilon to fbx.
2022-02-16 00:17:26 +01:00
Kim Kulling
c718500c55
Fix last review findings and finish windows bits
2022-02-14 20:25:18 +01:00
Kim Kulling
52b6c4f7c0
Fix broken importer and add some review findings2
2022-02-13 18:44:22 +01:00
Kim Kulling
3e09d462fa
Fix compression for fbx
2022-02-12 09:25:45 +01:00
Kim Kulling
27bcddfb1a
Migrate more importers to compression class
2022-02-08 20:43:47 +01:00
Kim Kulling
05746acb07
Merge branch 'new-file-detection' of https://github.com/krishty/assimp into krishty-new-file-detection
2022-01-16 20:41:24 +01:00
Kim Kulling
50c7301a38
Update copyrights
2022-01-10 21:13:43 +01:00
Vyacheslav.Vanin
1afe7e6255
fix fbx import metalness
...
Can't import metalness textures in fbx importer
2021-12-16 12:09:06 +03:00
Inho Lee
c2297e9199
Revert "FBXConverter : Fix timescales of FBX animations"
...
The previous patch was made by misunderstanding about mTime.
It is not real time value, but time ticks.
This reverts commit b8bf1eac04
.
2021-12-09 10:57:39 +01:00
Inho Lee
4a37aa2ef8
Interpolate euler rotations for quaternion animations
...
FBX uses euler rotation but assimp library's base type is
quaternion. When assimp convert FBX some animation information
can be lost.
This patch interpolates euler-angle rotations and insert
additional keyframes for the FBX format.
2021-11-30 12:49:59 +01:00
RichardTea
86a25b62e4
Better aiMesh ABI compatibility with 5.0.1, make smaller
...
Move new mTextureCoordsNames member to end of struct
Convert to pointer-to-array, saving ~8KB per aiMesh in almost all cases
Add C++ accessor functions for simpler usage
2021-11-09 13:03:06 +00:00
IOhannes m zmölnig
3b8126d26a
Fix spelling mistake
2021-10-08 08:48:01 +02:00
krishty
8c84afaff0
Merge branch 'master' into const-tokens
2021-09-15 23:31:00 +02:00
Kim Kulling
18531e3677
Next iteration for c++11 features.
2021-09-13 22:38:20 +02:00
Krishty
5895c0c22c
more const in format detection
...
BaseImporter::SearchFileHeaderForToken() expected a pointer to a non-const token list. This was probably an oversight, as nobody would realistically expect the function to change the list. Furthermore, it prevented token lists from being compiled to read-only memory, in some cases even causing the compiler to generate thread-safe initialization.
The list is now const and all callers declare their token lists static const, thus compiling them to read-only memory.
2021-09-11 23:23:05 +02:00
Kim Kulling
bc0a2762df
Merge branch 'master' into master
2021-09-09 09:16:50 +02:00
Max Vollmer (Microsoft Havok)
51f294c587
Fixes issues our internal compliance and code quality tool found:
...
* Adds nullptr checks and asserts to protect certain code paths
* Fixes wrong integer type in a printf call
* Adds const to const values
* Prevents integer overflow with explicit casts
2021-08-30 14:59:17 +01:00
kirillsurkov
5ca2cbb7ae
Fix MinGW build
2021-08-28 20:04:37 +03:00
Kim Kulling
eabfc05bbb
Handle empty keys
2021-08-27 10:41:25 +02:00
Kim Kulling
f3903e34a4
Merge branch 'master' into master
2021-08-18 07:32:16 +02:00
Max Vollmer (Microsoft Havok)
de2f5cf021
Crash fixes
2021-08-13 16:26:42 +01:00
Mykhailo Smoliakov
c3fcbfd2c1
Fix issue of incorrect reading of PBR properties such as base and emissive color in FBX
2021-08-11 08:54:34 +03:00
Krishty
758116b083
removed trailing spaces and tabs from source and text
...
This commit ignores the “contrib” folder in order to prevent merge conflicts in dependencies, should these be updated via git.
2021-07-29 13:28:51 +02:00
Hill Ma
aa883eda19
FBX: fix double precision build.
2021-07-15 11:54:55 -07:00
Kim Kulling
01930101c7
Merge branch 'master' into master
2021-06-29 20:45:09 +02:00
Aaron Gokaslan
8e3a159141
Merge branch 'master' into clang-tidy-perf-fixes
2021-06-23 10:10:28 -04:00
Pankaj Tyagi
6170c49155
Fixed:
...
1. FBX import is unable to read the texture UV rotation angle.
2. FBX export is unable to write the texture UV rotation angle.
2021-06-23 16:49:09 +05:30
Kim Kulling
36815b014b
Update FBXExporter.h
2021-06-22 20:05:16 +02:00
Aaron Gokaslan
94c3abd841
Apply various performance fixes from clang-tidy
2021-06-22 12:27:15 -04:00
Kim Kulling
391d3195df
Merge branch 'master' into fbx-lights-export
2021-06-10 12:27:14 +02:00
Kim Kulling
c8510a1a82
Merge branch 'master' into fix-fbx-exporter2
2021-06-03 11:05:07 +02:00
Kim Kulling
b59db55b8c
Merge branch 'master' into less-string-bloat
2021-05-26 12:14:08 +02:00
Jean-François Verdon
f13515a391
Adding basic support for lights in FBX exporter
2021-05-23 19:12:21 +02:00
Kim Kulling
aeaa22cbbd
Merge branch 'master' into UVStreamNames
2021-05-23 14:37:28 +02:00
Kim Kulling
ac54fe41e2
Merge branch 'master' into PBRsupport
2021-05-23 13:23:06 +02:00
Jagoon
f96e3cde2d
Fix transform chain is applied twice
2021-05-23 00:06:05 +09:00
Jagoon
28e34878cb
Fix fbx exporter bug if root node contains meshes.
2021-05-22 23:20:34 +09:00
Malcolm Tyrrell
4ec01cfdcd
Improve use of logging
2021-05-13 12:05:31 +01:00
Malcolm Tyrrell
ad6f300b1d
Other LogAux functions
2021-05-13 10:43:28 +01:00
Malcolm Tyrrell
7abfd134b6
LogAux warn
2021-05-13 10:33:16 +01:00
Malcolm Tyrrell
5cd3bdd5c2
No need to distinguish formatting log functions.
2021-05-13 10:25:27 +01:00
Krishty
b79b84d34e
Merge branch 'master' into new-file-detection
2021-05-05 00:09:42 +02:00
Krishty
0f3e6e2941
replaced std::size() with AI_COUNT_OF for pre-C++20 compilers
2021-05-05 00:08:54 +02:00
Jason C
2925592c64
[assimp] Make sure ctype calls use unsigned char.
...
Cast to unsigned char as required by C++ (see C++ **[cctype.cyn]** -> ISO C99 section 7.4, [see also](https://en.cppreference.com/w/cpp/string/byte/isspace )).
Addresses https://github.com/assimp/assimp/issues/3867 and then some.
2021-05-04 17:31:13 -04:00
Krishty
b57ce004f8
reduced FBX string bloat
...
The FBX importer used two std::strings where string literals would have been sufficient.
2021-05-04 22:01:01 +02:00
Tom spot Callaway
f91b439f79
preserve UV Stream names in FBX files
2021-05-03 13:40:31 -04:00
Tom spot Callaway
e7211790fb
PBR material support
2021-05-03 13:27:52 -04:00
vfxgordon
9ae3e88f6c
Merge branch 'master' into fbxBlendshapes
2021-05-03 07:40:25 -07:00
Gordon Chapman
64da2a4315
Merge remote-tracking branch 'upstream/master' into fbxBlendshapes
2021-04-26 13:51:22 -07:00
Gordon Chapman
a5d0e99548
Fixed error in blendShapeChannel Weighting
2021-04-26 12:19:20 -07:00
Krishty
b00de10eb3
Simplified importer search and fixed a few bugs
...
The search for a matching importer had a few issues, see #3791 . There were two different mechanisms to determine whether an importer accepts a specific file extension:
1. `aiImporterDesc::mFileExtensions`, which was forwarded to the UI via `BaseImporter::GetExtensionList()`.
2. `BaseImporter::CanRead()` when called with `checkSig == false`, which determines whether to actually use that importer.
Both were redundant and got out of sync repeatedly. I removed 2. completely and replaced it with 1., thereby syncing UI/import and shortening all `BaseImporter::CanRead()` implementations.
Further bugfixes:
- fixed glTF2 importer throwing exceptions when checking whether it can load a file
- removed `BaseImporter::SimpleExtensionCheck()` because it is no longer used and had a bug with case sensitivity
Since the `checkSig` parameter in `BaseImporter::CanRead()` is now useless, it can be removed completely. I’m not sure if this would break ABI compatiblity, so I’ll submit it with a later pull request.
2021-04-24 00:17:50 +02:00
Krishty
f761dc72f4
style fix - initializing and assigning empty std::string properly
...
std::string s(""); s = ""; calls the copy constructor, which in turn calls strlen(), … assigning a default-constructed string generates fewer instructions and is therefore preferred.
With C++11 uniform initialization, you’d simply write s = { } instead.
2021-04-16 23:43:56 +02:00
Hill Ma
4aa52b3af8
Flip the check on _MSC_VER for using TR1 containers.
2021-04-13 11:15:52 -07:00
Kim Kulling
cf4ef04a80
Merge branch 'master' into master
2021-04-07 20:58:40 +02:00
Gordon Chapman
3fd865b4bf
Added Blendshape Support to FBX Export
2021-03-24 18:10:03 -07:00
Urs Hanselmann
c0c7e6a0de
trim uvIndices to fix import of Cheetah3D generated fbx files
2021-03-12 14:48:38 +01:00
Urs Hanselmann
cc7e229c3c
disable size check
2021-03-12 08:55:11 +01:00
Kim Kulling
6c89631581
closes https://github.com/assimp/assimp/issues/3678 : ensure lowercase
2021-03-09 21:08:28 +01:00
Kim Kulling
9e8dbd0ca5
Update copyrights to 2021.
2021-02-28 12:17:54 +01:00
Kim Kulling
1e38f84c3a
fix typo
2021-01-27 09:40:19 +01:00
Kim Kulling
ac0f1f2cab
Update FBXMaterial.cpp
2021-01-27 09:37:35 +01:00
Kim Kulling
c02ad323a5
Fix VS compiler warning: convertig int to char
2021-01-27 09:22:59 +01:00
Kim Kulling
4471c36c08
Fix compiler bug for VS2019
...
- Check https://developercommunity.visualstudio.com/content/problem/1223143/visual-studio-2019-c-program-crash-with-stdstring.html for more details
- closes https://github.com/assimp/assimp/issues/3572
2021-01-26 20:59:21 +01:00
Kim Kulling
77f9c2854a
Merge branch 'master' into fbx_tokenizer_fix
2020-12-25 21:44:26 +01:00
Inho Lee
b8bf1eac04
FBXConverter : Fix timescales of FBX animations
...
FBX animations were recorded by framenumber, not by time.
This patch will change it as a base of milliseconds.
2020-12-16 15:02:46 +01:00
Max Vollmer
9d3c0081eb
Throw if property length is out of bounds
2020-12-14 16:49:04 +00:00
Kim Kulling
7dd0596010
Merge branch 'master' into 3dsMax2021PbrMaterials
2020-12-11 14:31:00 +01:00
Malcolm Tyrrell
471d2acc92
Improvements & style
2020-12-03 11:17:45 +00:00
Malcolm Tyrrell
19af3f0d31
Swap the meaning using the out_mat property.
2020-12-02 16:59:29 +00:00
Malcolm Tyrrell
f7be3048de
New 3ds Max PBR Materials in FBX
2020-12-01 12:05:42 +00:00
Kim Kulling
88be8ec698
Merge branch 'master' into fbxExceptionSafety
2020-11-27 21:49:58 +01:00
Malcolm Tyrrell
149b8d1fd1
Don't need operator< either.
2020-11-27 14:26:51 +00:00
Malcolm Tyrrell
14f79caf41
textures_converted keys can just be pointers
2020-11-26 16:29:37 +00:00
Malcolm Tyrrell
885a196c74
Unsigned
2020-11-19 16:30:44 +00:00
Neil Clifford
7b59cc297e
FBXParser.cpp - handle buffer over-read cases correctly
2020-11-19 12:20:06 +00:00
Malcolm Tyrrell
c00153089a
Neater construction
2020-11-17 10:45:10 +00:00
Malcolm Tyrrell
213a9f9d55
First pass at PotentialNode
2020-11-17 10:39:03 +00:00
Malcolm Tyrrell
3221522f95
Prevent crash with malformed texture reference
2020-11-16 17:29:19 +00:00
Kim Kulling
8c135f779e
Merge branch 'master' into readFbxWeightsInConfig
2020-10-28 20:38:29 +01:00
Kim Kulling
aee2e9a87d
Merge branch 'master' into patch-1
2020-10-25 20:35:06 +01:00
#Momo
b168d8f441
replaced data with taking address of first element
...
oops, seems like `data()` returns `char*` only since C++17. Replaced with taking address of first string element
2020-10-21 23:41:33 +03:00
#Momo
7781fe5781
MSVC crash workaround
...
I do not know why, but the following line causes crash if assimp was compiled using MSVC with RelWithDebInfo configuration:
`std::transform(shading.begin(), shading.end(), shading.begin(), Assimp::ToLower<char>);`
replacing `shading.begin()` with `shading.data()` fixes this issue.
2020-10-21 23:21:50 +03:00
Malcolm Tyrrell
a2cd5619b4
Merge branch 'master' into readFbxWeightsInConfig
2020-10-19 10:16:02 +01:00
Malcolm Tyrrell
0363c18f1f
Read weights
2020-10-15 10:07:24 +01:00
Kim Kulling
636f28965f
Merge branch 'master' into fbxReportAssetIssuesProperly
2020-10-11 18:13:43 +02:00
Sahin Serdar Kocdemir
eb9928e029
fix for fbx files using stringray materials;
2020-10-09 07:28:15 +01:00
Malcolm Tyrrell
4bdaf20b70
Add comment.
2020-10-05 14:23:42 +01:00
Malcolm Tyrrell
585fb89154
Make an assert a DeadlyImportError.
2020-10-02 15:25:16 +01:00
Kim Kulling
23defc275a
Merge branch 'master' into makeInternalErrorsAccessible
2020-09-14 08:36:13 +02:00
Joshua Hyatt
638499a278
Replace unique_ptr and add custom deleter
2020-09-01 10:30:31 -06:00
Joshua Hyatt
dcf9a7b2d8
Conform variable names to code standards
2020-08-29 23:58:31 -06:00
Joshua Hyatt
953e976de6
Close stream when finished
2020-08-29 23:56:50 -06:00
Joshua Hyatt
cc2613f264
Replace unique_ptr with raw pointer
2020-08-29 23:06:33 -06:00
Malcolm Tyrrell
6c2ceb55f8
Simplify some FBX error code.
2020-08-19 17:20:57 +01:00
Malcolm Tyrrell
b7c789da67
Stop concatenating std::strings. Use formatter.
2020-08-18 17:35:08 +01:00
Kim Kulling
008e551f8e
Merge branch 'master' into fbxVersionCheck
2020-07-31 14:33:21 +02:00
Malcolm Tyrrell
0282f358a4
Remove unneeded check.
2020-07-31 12:40:17 +01:00
Malcolm Tyrrell
301bae3967
Improve message
2020-07-30 16:37:41 +01:00
Malcolm Tyrrell
eaf0587dd8
FBX Version/Size Check
2020-07-30 14:56:01 +01:00
Ryan Styrczula
3170c3d15c
FBXExport: Fix crash if scene->mMetaData is null
2020-07-30 09:21:43 -04:00
Ryan Styrczula
0c2f7a119c
FBXExporter: Forgot WritePropColor defaultValue
2020-07-13 13:56:06 -04:00
Ryan Styrczula
6619ec8253
FBXExporter: Use scene metadata for global settings
...
Models with non-standard axes and scale are not imported and exported
correctly if the input metadata is ignored.
2020-07-13 13:56:06 -04:00
Kim Kulling
78d0b81b6c
Merge branch 'master' into patch-1
2020-07-12 18:54:34 +02:00
Kim Kulling
b7b38c2282
Merge branch 'master' into patch-2
2020-06-25 16:52:40 +02:00
Kim Kulling
6205af4efb
replace NULL and avoid ai_assert with more than 2 tests.
2020-06-23 21:05:42 +02:00
Filip Lundgren
2006286528
Fix Maya PBR & stingray texture detection
2020-06-22 23:14:16 +02:00
Filip Lundgren
ba09e1ef94
Fix Blender .fbx metalness detection
2020-06-21 23:56:11 +02:00
Yingying Wang
26421aebc9
support channel name in blendshape name
2020-06-08 13:33:16 -07:00
Malcolm Tyrrell
14692368d5
Same for LogDebug -> LogVerboseDebug
2020-05-18 11:55:14 +01:00
Malcolm Tyrrell
d70685d37f
Fix typo
2020-05-15 17:50:48 +01:00
Malcolm Tyrrell
90cdbd9d9a
Fix ups
2020-05-15 17:46:50 +01:00
Malcolm Tyrrell
434c5e3d37
More verbose logging
2020-05-15 17:29:49 +01:00
Malcolm Tyrrell
2ffd1cb8db
nits
2020-05-15 17:22:15 +01:00
Malcolm Tyrrell
bcca3a0d79
No need for bespoke macros
2020-05-15 17:22:02 +01:00
Malcolm Tyrrell
6be0ce1ec9
Initial pass at adding logging
2020-05-15 17:21:45 +01:00
hoshiryu
3fdcd0861f
Fix fbx rotation ;
2020-05-11 10:28:05 +02:00
Kim Kulling
f8e6512a63
Move format importer and exporter into its won folder.
2020-05-02 15:14:38 +02:00