summaryrefslogtreecommitdiff
path: root/modules/gltf
AgeCommit message (Collapse)Author
2023-01-27Add missing classref changes after #62942Rémi Verschelde
2023-01-27Merge pull request #62499 from fire/gltf-binary-img-compressionRémi Verschelde
Handle gltf binary images
2023-01-27Merge pull request #72162 from lyuma/skeleton_renameRémi Verschelde
Make BoneAttachment3D and Skeleton3D names consistent.
2023-01-27Handle gltf binaryK. S. Ernest (iFire) Lee
[ Ignore and Warn | Extract Textures (default) | Optimize Loading Embedded as Basisu ] Enable compressed mip maps from Basis Universal for faster compressions. Increase the quality of Basis to avoid corruption. To keep compatibility use the first mip of the previous internal Godot format. Because texture names may have invalid filename characters, adds String::validate_filename to sanitize filenames for import pipeline use.
2023-01-26Make BoneAttachment3D and Skeleton3D names consistent.Lyuma
BoneAttachment3D nodes are now named as their bone name. Resolves cases where BoneAttachment3D nodes will have arbitrary names like BoneAttachment3D6 Reserve the name "Skeleton3D" and use this name for all generated Skeleton3D nodes. This change will break existing imported scenes with more than one skeleton and/or bone attachments.
2023-01-26Avoid nested skeletons, and handle skinned meshes with children.Lyuma
Recursively adds child nodes into each skeleton. This should prevent nested skeletons and avoid bone attachments for leaf bones. In cases where a skinned mesh has children, creates two scene nodes with the same name, which both will represent this single gltf node. Because blend shape animations must target the mesh, adds a separate mapping for ImporterMeshInstance3D node references. This change will break existing imported scenes with bone attachments and more than one skeleton. Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2023-01-23Adds missing method call to set blendshape tracks as 'imported' when ↵SaracenOne
importing from a GLTF.
2023-01-19Fixes cases where the runtime ResourceLoader cannot load gltf images.K. S. Ernest (iFire) Lee
2023-01-15Improve the documentation of GLTFDocument's append methodsAaron Franke
2023-01-05One Copyright Update to rule them allRémi Verschelde
As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-01Update stale node ref after replace_by in GLTF importerJames Mintram
2022-12-18Add a dialog for customizing FBX importreduz
* If FBX files are found, a dialog will pop up asking to configure FBX2glTF. * Dialog can also be accessed by going Editor -> Configure FBX Import. * The dialog also shows a link to click to download the converter, which should contain instructions.
2022-12-17glTF: Fix export crash with a ShaderMaterial (fixes #70159)Quentin Guidée
2022-12-11Pass GLTFState to the export_preflight methodAaron Franke
2022-12-10Consistently use `p_` for parameters in GLTFDocumentAaron Franke
2022-12-10Merge pull request #69372 from aaronfranke/gltf-cleanupRémi Verschelde
GLTF module: Clean up lots of includes
2022-12-06 EditorSceneFormatImporterGLTF: check if "animation/trimming" parameter from ↵Eduard Zalyaev
import settings exists Fixes godotengine#69625
2022-12-04Use system fonts as fallback and improve system font handling.bruvzg
Add support for font weight and stretch selection when using system fonts. Add function to get system fallback font from a font name, style, text, and language code. Implement system font support for Android. Use system fonts as a last resort fallback.
2022-11-29GLTF: Clean up lots of includesAaron Franke
2022-11-29Merge pull request #68665 from TokageItLab/cut-unkeyed-gltf-animRémi Verschelde
Add "Trimming" option to cut un-keyed timeline before first key in glTF animation
2022-11-29Use forward-declarations in big editor classestrollodel
2022-11-29Add trimming option to cut un-keyed timeline before first key in gltfSilc Renew
2022-11-24Merge pull request #69083 from fire/abstract_gltf_materialRémi Verschelde
Cache materials in gltf as the abstract class of Material in GLTFDocument
2022-11-24Cache materials in gltf as the abstract class of MaterialK. S. Ernest (iFire) Lee
Use the abstract material class instead of BaseMaterial3D. This allows inserting ShaderMaterials into gltf. Like in VRM.
2022-11-22Add unregister for GLTFDocumentExtensionRedMser
2022-11-21Add three new methods to GLTFDocumentExtensionAaron Franke
2022-11-20Add GLTFDocument documentation.K. S. Ernest (iFire) Lee
Co-authored-by: Meow <mosesturner@protonmail.com> Co-authored-by: Aaron Franke <arnfranke@yahoo.com>
2022-11-20Merge pull request #66026 from aaronfranke/gltf-extensionRémi Verschelde
Change the way GLTFDocumentExtension classes are registered
2022-11-11Use forward-declarations in EditorPlugin where possibletrollodel
2022-11-09Change the way GLTFDocumentExtension classes are registeredAaron Franke
Also move GLTFDocumentExtension into the extensions folder
2022-11-01Replace Quaternion Euler constructor with `from_euler` methodAaron Franke
2022-10-19Simplify GDVIRTUAL_CALL callskobewi
2022-10-15Add a way to store additional data in GLTFState and GLTFNodeAaron Franke
2022-10-14Make some Image methods statickobewi
2022-10-10SCons: Re-enable treating `#warning` as error with `werror`Rémi Verschelde
Replace all TODO uses of `#warning` by proper TODO comments, and will open matching bug reports to keep track of them. We don't have a great track record fixing TODOs, but I'd wager we're even worse for fixing these "TODO #warning" so we should prohibit this usage.
2022-10-07Fix MSVC warnings, rename shadowed variables, fix uninitialized values, ↵bruvzg
change warnings=all to use /W4.
2022-10-05Merge pull request #66841 from jtnicholl/blend_enum_checksRémi Verschelde
Clean up .blend importer to fix unreachable code paths
2022-10-03Merge pull request #59481 from LunaticInAHat/gltf_texture_filter_fix_4Clay John
Respect texture filtering when importing GLTF
2022-10-03GLTF imports & exports material texture filtersThe Tophat Demon
2022-10-03Clean up .blend importer to fix unreachable code pathsJonathan Nicholl
2022-10-02Fix visibility filtering options for .blend importsJonathan Nicholl
2022-09-26SCons: Unify tools/target build type configurationRémi Verschelde
Implements https://github.com/godotengine/godot-proposals/issues/3371. New `target` presets ==================== The `tools` option is removed and `target` changes to use three new presets, which match the builds users are familiar with. These targets control the default optimization level and enable editor-specific and debugging code: - `editor`: Replaces `tools=yes target=release_debug`. * Defines: `TOOLS_ENABLED`, `DEBUG_ENABLED`, `-O2`/`/O2` - `template_debug`: Replaces `tools=no target=release_debug`. * Defines: `DEBUG_ENABLED`, `-O2`/`/O2` - `template_release`: Replaces `tools=no target=release`. * Defines: `-O3`/`/O2` New `dev_build` option ====================== The previous `target=debug` is now replaced by a separate `dev_build=yes` option, which can be used in combination with either of the three targets, and changes the following: - `dev_build`: Defines `DEV_ENABLED`, disables optimization (`-O0`/`/0d`), enables generating debug symbols, does not define `NDEBUG` so `assert()` works in thirdparty libraries, adds a `.dev` suffix to the binary name. Note: Unlike previously, `dev_build` defaults to off so that users who compile Godot from source get an optimized and small build by default. Engine contributors should now set `dev_build=yes` in their build scripts or IDE configuration manually. Changed binary names ==================== The name of generated binaries and object files are changed too, to follow this format: `godot.<platform>.<target>[.dev][.double].<arch>[.<extra_suffix>][.<ext>]` For example: - `godot.linuxbsd.editor.dev.arm64` - `godot.windows.template_release.double.x86_64.mono.exe` Be sure to update your links/scripts/IDE config accordingly. More flexible `optimize` and `debug_symbols` options ==================================================== The optimization level and whether to generate debug symbols can be further specified with the `optimize` and `debug_symbols` options. So the default values listed above for the various `target` and `dev_build` combinations are indicative and can be replaced when compiling, e.g.: `scons p=linuxbsd target=template_debug dev_build=yes optimize=debug` will make a "debug" export template with dev-only code enabled, `-Og` optimization level for GCC/Clang, and debug symbols. Perfect for debugging complex crashes at runtime in an exported project.
2022-09-26Style: Cleanup header guards for consistencyRémi Verschelde
Fix file names for {Static,Lightmap}RaycasterEmbree.
2022-09-19Add a way to get the GLTF extensions supported by GLTFDocumentExtensionAaron Franke
2022-09-19Make used extensions stored in GLTFStateAaron Franke
This allows GLTFDocumentExtension classes to add to the used extensions array.
2022-09-18Minor enhancements to the GLTF module (lights and docs)Aaron Franke
2022-09-13Merge pull request #65611 from Sarfraz-droid/Issue65602Rémi Verschelde
2022-09-12Fix some errors affecting the Web editorRémi Verschelde
- Don't warn about minimized/maximized modes not being available. - Blender and FBX export both depend on running thirdparty applications, which can't be done (easily at least) for Web and Android editors. - Editor theme complained about not being able to retrieve texture data for an icon. It was only used once so instead of flipping at runtime, let's just add a flipped icon. Part of #65702.
2022-09-10Fix gltf 8 bone weights condition to check for the second joint arraySarfraz
size.
2022-09-05Rename TileMap/GridMap.`world_to_map` and opposite to `local_to_map`Micky
For both TileMap and GridMap: - `world_to_map` -> `local_to_map` - `map_to_world` -> `map_to_local` Also changes any mention of "world" in this context to "local" to avoid future confusion. Finally, updates the docs of both methods for consistency. In particular, adding a note on how to convert the returned values from local to global coordinates and vice versa.