summaryrefslogtreecommitdiff
path: root/modules/gltf
AgeCommit message (Collapse)Author
2022-05-23Fix typos with codespellRémi Verschelde
Using codespell 2.2-dev from current git.
2022-05-20Add a new HashSet templatereduz
* Intended to replace RBSet in most cases. * Optimized for iteration speed
2022-05-20Improve gltf extension GLTFDocument api.K. S. Ernest (iFire) Lee
2022-05-16Replace most uses of Map by HashMapreduz
* Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
2022-05-04Merge pull request #60723 from reduz/refactor-module-initializationRémi Verschelde
2022-05-04Refactor module initializationreduz
* Changed to use the same stages as extensions. * Makes the initialization more coherent, helping solve problems due to lack of stages. * Makes it easier to port between module and extension. * removed the DRIVER initialization level (no longer needed).
2022-05-03Rename Basis get_axis to get_column, remove redundant methodsAaron Franke
2022-04-27Merge pull request #59393 from techiepriyansh/move-gltf-export-under-scene-menuRémi Verschelde
2022-04-23Discard images from gltf import for the animation library.K. S. Ernest (iFire) Lee
This is an optimization.
2022-04-13Merge pull request #60177 from reduz/animation-library-importRémi Verschelde
Import scenes as AnimationLibrary
2022-04-13Import scenes as AnimationLibraryreduz
Added the ability to import scenes as AnimationLibrary * Completes implementation of https://github.com/godotengine/godot-proposals/issues/4296 * Helps if you want to export animations to a separate file (say a GLTF) to avoid re-importing/exporting them every time the model changes. * Helps if you simply want to have animations using a dummy model, which can be shared across multiple models. Creates a secondary scene importer used only for animations. **NOTE**: A new flag for scene importer: EditorSceneFormatImporter.IMPORT_DISCARD_MESHES_AND_MATERIALS has been added, to hint importers that they should skip meshes and animations (and hence make importing faster). It is not implemented in any importer yet, this should be done in a separate PR.
2022-04-13Color: Rename `to_srgb`/`to_linear` to include base color spaceRémi Verschelde
This helps reduce confusion around sRGB <> Linear conversions by making both input and output color spaces explicit.
2022-04-12move gltf export under scene menuPriyansh Rathi
2022-04-11Merge pull request #59980 from reduz/animation-librariesRémi Verschelde
2022-04-11Implement Animation Librariesreduz
* Instead of containing single animations, AnimationPlayer now contains libraries. * Libraries, in turn, contain the animations. This paves the way for implementing the possibility of importing scenes as animation libraries, finally allowing to import animations separate from the 3D models. Missing (will be done on separate PRs): * Make it possible to import scenes (dae/fbx/gltf) as animation libraries. * Make it possible for AnimationTree to import animation libraries on its own, so it does not rely on AnimationPlayer for everything.
2022-04-11Make FileAccess and DirAccess classes reference counted.bruvzg
2022-04-07Fix path handling in FBX and Blend importersRémi Verschelde
Fixes #59996.
2022-04-03Initialize pointer variables to fix random crash on startup.Marc Gilleron
`configure_blender_dialog` is lazily created if equal to null, however nothing really sets it to null.
2022-04-01Merge pull request #59764 from reduz/blender-import-autodetectRémi Verschelde
2022-04-01Add Blender install autodetection and configuration.reduz
This PR is a continuation to #54886 * Changed Blender path editor setting from binary to installation. * Add a class to query whether the format is supported. * This class allows to create proper editors to configure support. **NOTE**: This PR only provides autodetection on Linux. Code needs to be added for Windows and MacOS to autodetect the Blender installation. Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com> Co-authored-by: Pedro J. Estébanez <pedrojrulez@gmail.com>
2022-04-01Merge pull request #59755 from V-Sekai/import-gltf-mat-placeholderRémi Verschelde
2022-03-31Add support for Blend importing of material placeholders.K. S. Ernest (iFire) Lee
Couldn't get the 'NONE' option to work.
2022-03-31Allow importing punctual lights from Blend.K. S. Ernest (iFire) Lee
2022-03-30Add fbx2gltf support for importing .fbx filesK. S. Ernest (iFire) Lee
Lets you drag or place .fbx files in the project folder and it will import the files. An editor setting sets the location of the fbx2gltf binary. Enables .fbx and .blend by default. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-03-29Add support for importing .blend filesK. S. Ernest (iFire) Lee
Lets you drag or place .blend files in the project folder and it will import the files. Checks for Blender 3.0's gltf2 `export_keep_originals` option. Add basepath support to GLTFDocument append_from_file. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-03-28Remove last editor code dependencies in template buildRémi Verschelde
SConstruct change also makes it possible to outright delete the `editor` folder in a `tools=no` build, which we use in CI to ensure no invalid cross-dependencies are added.
2022-03-28Modules: Don't build editor-specific classes in templatesRémi Verschelde
They're moved to an `editor` subfolder so that we can easily handle them separately.
2022-03-24Add GLTF, DAE and FBX importers enforcement for blend shape mask arrayAdam Scott
2022-03-03glTF export for new TYPE_BLEND_SHAPE tracksLyuma
2022-02-20Fix GLTF exporter crash when using GridMapHaoyu Qiu
2022-02-16Default material is assigned to meshes without material for glTF exportFazil Babu
2022-02-15Merge pull request #35679 from Calinou/doc-add-xml-schemaRémi Verschelde
2022-02-15Add an XML schema for documentationHugo Locurcio
This makes it easier to spot syntax errors when editing the class reference. The schema is referenced locally so validation can still work offline. Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-14Remove the EditorNode parameter from EditorPlugins create methodstrollodel
Remove EditorNode usage from the Navigation editor plugin.
2022-02-14Remove most EditorNode constructor parameters and fieldstrollodel
2022-02-12Merge pull request #57641 from Geometror/compilation-time-improvements-1Rémi Verschelde
2022-02-12Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker
2022-02-11CSG Meshes can be exported as glTFFazil Babu
2022-02-10Fix typos with codespellRémi Verschelde
Using codespell 2.2-dev from current git. Added `misc/scripts/codespell.sh` to make it easier to run it once in a while and update the skip and ignore lists.
2022-02-09Core: Move generated `VERSION_HASH` to a `.cpp` fileRémi Verschelde
This lets us have its definition in `core/version.h` and avoid rebuilding a handful of files every time the commit hash changes.
2022-02-04[Net] New replication interface, spawner and synchronizer nodes.Fabio Alessandrelli
Initial implementation of the MultiplayerReplicationInterface and its default implementation (SceneReplicationInterface). New MultiplayerSpawner node helps dealing with instantiation of scenes on remote peers (e.g. clients). It supports both custom spawns via a `_spawn_custom` virtual function, and optional auto-spawn of known scenes via a TypedArray<PackedScenes> property. New MultiplayerSynchornizer helps synchronizing states between the local and remote peers, supports both sync and spawn properties and is configured via a `SceneReplicationConfig` resource. It can also sync via path (i.e. without being spawned by a MultiplayerSpawner if both peers has it in tree, but will not send the spawn state in that case, only the sync one.
2022-02-04String: Add contains().Anilforextra
2022-01-25Issue 57130 Fix GLTFDocument.generate_scene if state is nullPaweł Fertyk
2022-01-08Skip Draco-compressed glTF 3d format files.K. S. Ernest (iFire) Lee
2022-01-07Fix some more wrong node nameskobewi
2022-01-05Merge pull request #56479 from V-Sekai/import-optionsRémi Verschelde
2022-01-05Merge pull request #56380 from RedMser/export_gltf_normal_crashRémi Verschelde
2022-01-05Merge pull request #56290 from nikitalita/fix-gltf-mesh-primsRémi Verschelde
2022-01-05options dict is now passed to _import_scene.K. S. Ernest (iFire) Lee
2022-01-04Merge pull request #52541 from V-Sekai/gltf-load-scene-bufferK. S. Ernest (iFire) Lee
Add gltf import buffer.