summaryrefslogtreecommitdiff
path: root/modules/fbx
AgeCommit message (Collapse)Author
2021-04-29Replace remaining uses of `NULL` with `nullptr`Rémi Verschelde
Follow-up to #38736 (these uses were likely added after this PR was merged).
2021-04-27Merge pull request #48187 from brakhane/remove-dupe-commentsRémi Verschelde
Remove duplicate comments
2021-04-26Remove uses of `auto` for better readability and online code reviewsHugo Locurcio
The current code style guidelines forbid the use of `auto`. Some uses of `auto` are still present, such as in UWP code (which can't be currently tested) and macros (where removing `auto` isn't easy).
2021-04-25Remove duplicate commentsDennis Brakhane
A few single line comments were duplicated, probably due to bad merges. This commit removes the obviously duplicate ones.
2021-04-22fbx: Fix include for zlib that broke unbundlingRémi Verschelde
It's possible to link against system zlib on Linux, so we should use system paths.
2021-04-15This stops using FBXPropertyTable as a pointer.Gordon MacPherson
The base object will inherit the property table, for every FBX object, if it doesn't exist it will be ignored. The previous code was dangerous and not simple to understand, this makes the code simpler and should result in no leaks with PropertyTable. Features/Fixes: Adds ability for multiple millions of polygons to be loaded. Fixes memory leaks with tokens Fixes memory leaks with property table Fixes loading some corrupt files Fixes meshes not having a unique name to the mesh node. Opens up loading for two more versions: 7100 and 7200, up to 2020. Preliminary support for Cinema4D files in parser now, before this was not possible it would cause memory corruption, which is gone now. FBXProperties not being pointers presented simpler challenges in the long run also, fixed a bunch of bugs.
2021-04-08Fix crash on importing empty .fbx fileLyuma
2021-04-07Merge pull request #46877 from ↵Rémi Verschelde
W4RH4WK/always-dynamically-allocate-property-table Always dynamically allocate PropertyTable
2021-04-05Style: Apply clang-tidy's `readability-braces-around-statements`Rémi Verschelde
2021-04-05Style: Apply clang-tidy's `modernize-use-nullptr`Rémi Verschelde
2021-04-05Style: Apply clang-tidy's `modernize-use-default-member-init`Rémi Verschelde
2021-04-05Style: Apply clang-tidy's `modernize-use-bool-literals`Rémi Verschelde
2021-03-29FBX: Fix first bone getting unnecessary '_1' suffixRémi Verschelde
Fixes #43820. Co-authored-by: Gordon MacPherson <gordon@gordonite.tech>
2021-03-28Rename Texture.get_data() to get_image()Marcel Admiraal
2021-03-22Improved 3D Scene ImporterJuan Linietsky
* Added option for importers to show an Advanced settings dialog * Created advanced settings dialog for Scene Importer * Cleaned up importers (remove many old/unused options) * Added the ability to customize every node, material, mesh and animation individually * Saving to animations and meshes to files is now a manual process, making it more predictable * Added the ability for materials to be replaced by external files (or to be made external, up to you). * When doubleclicking an impoted scene in the filesystem dock, it automatically shows the import settings instead of asking to open it. WARNING: Lightmap UV unwrap is not working, it needs to be re-made.
2021-03-21Merge pull request #47194 from W4RH4WK/fbx-normalize-rotationsRémi Verschelde
FBX Import: Normalize rotation quaternions
2021-03-20FBX Import: Check bone map access for valid cluster target node idAlex Hirsch
fix #47184
2021-03-20FBX Import: Normalize rotation quaternionsAlex Hirsch
fix #47174
2021-03-10Always dynamically allocate PropertyTableAlex Hirsch
- `Texture::~Texture` expects `props` to be dynamically allocated. - `GetPropertyTable` returned a pointer to an existing `PropertyTable` but is expected to return a newly, dynamically allocated one. - `PropertyTable::PropertyTable()` suggests that an empty `element` property is valid. fix #46876 fix #45573
2021-01-26Fix zero scaling and material mappings being mapped to wrong fieldsGordon MacPherson
- fixes scale values of 0.0013 (det == 0.00004) not rendering, they should render even at small values, but not at zero like the editor grid plugin supplies zero exactly. - fixes node_3d_editor_plugin visibility bug when scale is zero - fix culling with small scaling values - which are still valid to be rendered like 0.00004 note: grid is still not fixed, it has det == 0 issues but this fixes one of them.
2021-01-12Update PolyPartition / Triangulator libraryAaron Franke
2021-01-05Preliminary Blender FBX support [4.0]Gordon MacPherson
limitations: - always has to use generated normal's. - some animations won't be compatible (yet) Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-01-04doc: Sync classref with current sourceRémi Verschelde
2021-01-01Update copyright statements to 2021Rémi Verschelde
Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
2020-12-29FBX: Clarify outdated format errorRémi Verschelde
See #44780.
2020-12-28Rename empty() to is_empty()Marcel Admiraal
2020-12-23Update FBX because of changes in the core api.K. S. Ernest (iFire) Lee
2020-12-23Port FBX module from commit 68013d23932688e57b489600f4517dd280edc464Gordon MacPherson
Ports FBX module from 3.2 branch to 4.0 This is the only time the plugin will be updated from 3.2 and marks the final time we do this, from now on we will backport FBX to 3.2 with fixes. Changelog: - fixed crash importing files with buggy format (because of bad newlines in ASCII data, this is yet to be fixed fully) - fixed const correctness with C++/C version change - rewrote material handling to be simpler and better - ports from 3.2 to 4.0 the fbx importer