Commit Graph

49218 Commits

Author SHA1 Message Date
Rémi Verschelde 8dc15ebbbb
Merge pull request #69152 from TokageItLab/fix-anim-key-cant-edit
Fix wrong `AnimationTrackKeyEdit` update timing
2022-11-25 10:03:04 +01:00
Rémi Verschelde 569e5fd1aa
Merge pull request #69148 from zaevi/fix_debugger_inspect_sub_object
Fix debugger can't inspect sub objects.
2022-11-25 10:01:58 +01:00
Rémi Verschelde e81b787d36
Merge pull request #69123 from queezle42/queezle42/master
Fix GLAD-related build problems on Linux
2022-11-25 10:00:55 +01:00
Rémi Verschelde c3af45791c
Merge pull request #67511 from neikeq/issue-66060
C#: Load assemblies as collectible only in the Godot editor
2022-11-25 10:00:33 +01:00
Silc Renew 5e785e2ea4 Fix wrong AnimationTrackKeyEdit update timing 2022-11-25 14:50:16 +09:00
Haoyu Qiu 06a0b26c9e Fix inspector not showing name for LabelSettings.font 2022-11-25 12:48:37 +08:00
Zae 50704f27ed FIx debugger can't inspect sub objects. 2022-11-25 11:09:18 +08:00
Ignacio Roldán Etcheverry 3f645f980c C#: Optimize Variant conversion callbacks
These callbacks are used for marshaling by callables and generic Godot
collections.

C# generics don't support specialization the way C++ templates do.
I knew NativeAOT could optimize away many type checks when the types
are known at compile time, but I didn't trust the JIT would do as good
a job, so I initially went with cached function pointers.

Well, it turns out the JIT is also very good at optimizing in this
scenario, so I'm changing the methods to do the conversion directly,
rather than returning a function pointer for the conversion.

The methods were moved to `VariantUtils`, and were renamed from
`GetFromVariantCallback/GetToVariantCallback` to `ConvertTo/CreateFrom`.

The new implementation looks like it goes through many `if` checks
at runtime to find the right branch for the type, but in practice it
works pretty much like template specialization. The JIT only generates
code for the relevant branch. Together with inlining, the result is
very close or the same as doing the conversion manually:

```cs
godot_variant variant;

int foo = variant.Int;
int bar = VariantUtils.ConvertTo<int>(variant);
```

If the type is a generic Godot collection, the conversion still goes
through a function pointer call.

The new code happens to be much shorter as well, with the file going
from 1057 lines to 407.

Side note: `Variant.cs` was mistakenly created in the wrong folder,
so I moved it to the `Core` folder.
2022-11-25 03:14:10 +01:00
Markus Sauermann 302ddbcfd9 Fix that the History Dock appears before other Docks in old projects
Newly introduced docks, that are not apparent in old projects should
be positioned after the ones in the project-config-file.
This way it seems to be less irritating.
2022-11-25 03:09:03 +01:00
Jens Nolte 67f31f571e Fix GLAD-related build problems on Linux
- Use gl.h provided by GLAD in the OpenXR module
- Use non-EXT variants of some OpenGL defines
- Remove libGL-related code paths
2022-11-25 02:52:17 +01:00
clayjohn 5c95288a6e Ensure that mesh instance is properly freed when freeing Polygon2D 2022-11-24 17:34:25 -08:00
Ignacio Roldán Etcheverry cdfef0c852
Merge pull request #69143 from raulsntos/dotnet/projection-docs
C#: Add Projection documentation
2022-11-25 01:21:59 +01:00
Raul Santos ca5c51f47e
C#: Add Projection documentation
- Add documentation to Projection type
- Reorder Projection members to be consistent with other C# types
2022-11-25 00:29:58 +01:00
Rémi Verschelde 7580565c28
Merge pull request #69135 from clayjohn/GLES3-mesh2D
Fix drawing of Mesh2D
2022-11-24 23:30:45 +01:00
Rémi Verschelde 8b7efd2306
Merge pull request #69134 from jquinl/export_range_int_fix
GDScript: Properly respect `int` type hint for `@export_range`
2022-11-24 23:30:40 +01:00
Rémi Verschelde e5e9496b4a
Merge pull request #69133 from clayjohn/GDscript-static-warning
Ensure class name is printed in STATIC_CALLED_ON_INSTANCE warning
2022-11-24 23:30:35 +01:00
Hugo Locurcio ca44deae9d
Document the Light2D, PointLight2D and DirectionalLight2D classes 2022-11-24 23:08:46 +01:00
unknown 5fd382c2ab GDScript: Properly respect `int` type hint for `@export_range`
Fixes #69104.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-11-24 22:14:05 +01:00
clayjohn 535f1adc8d Fix drawing of Mesh2D
The batch was being discarded if no instance buffer was present, but an instance buffer is only needed for MultiMesh and particles.
2022-11-24 13:00:42 -08:00
clayjohn 075cea1077 Ensure class name is printed in STATIC_CALLED_ON_INSTANCE warning 2022-11-24 12:06:11 -08:00
Rémi Verschelde a16d3625c3
Merge pull request #69128 from Chaosus/vs_fix_custom_nodes
Fix custom visual shader nodes not being loaded at startup
2022-11-24 19:04:21 +01:00
Rémi Verschelde e1b87cc6a5
Merge pull request #69127 from KoBeWi/redUNDOnt
Cleanup remaining EditorUndoRedoManager usages
2022-11-24 19:04:16 +01:00
Rémi Verschelde e836284667
Merge pull request #69072 from souplamp/history-dock-check-connected
Add history dock to default editor layout, and prevent signal connecting multiple times
2022-11-24 19:04:10 +01:00
Yuri Rubinsky a973ddd28d Fix custom visual shader nodes not being loaded at startup 2022-11-24 20:58:16 +03:00
kobewi 8a3d2f4e0c Cleanup remaining EditorUndoRedoManager usages 2022-11-24 18:56:22 +01:00
Rémi Verschelde 93be29be06
Merge pull request #69125 from raulsntos/dotnet/bezier_derivative
C#: Implement BezierDerivative
2022-11-24 18:56:02 +01:00
Rémi Verschelde 97e632de44
Merge pull request #66574 from MewPurPur/search-results-improvements
Fixes and improvements to Search Results dock
2022-11-24 18:55:56 +01:00
Rémi Verschelde d7e3fce995
Merge pull request #68566 from Mickeon/node-print-orphans-static
Make `Node.print_orphan_nodes()` static
2022-11-24 18:55:30 +01:00
Rémi Verschelde f953ba4ec4
Merge pull request #68938 from brunosxs/fix/subresource-documentation
Fix for documentation not appearing in preview in editor inspector
2022-11-24 18:54:58 +01:00
Rémi Verschelde 4a8b725bc9
Merge pull request #68386 from MewPurPur/snappedi-snappedf
Implement snappedi, snappedf, and Vector[2/3/4]i.snapped
2022-11-24 18:54:49 +01:00
Rémi Verschelde 5e2bb98eee
Merge pull request #68806 from MewPurPur/printraw-warn-better-in-docs
Make it clearer that printraw only prints to terminal
2022-11-24 18:54:42 +01:00
Rémi Verschelde 0d202cb5f1
Merge pull request #69111 from TokageItLab/put-together-interpolations
Refactor interpolating functions in some classes to use `Math` class
2022-11-24 18:54:30 +01:00
Rémi Verschelde 06bdc91afd
Merge pull request #69083 from fire/abstract_gltf_material
Cache materials in gltf as the abstract class of Material in GLTFDocument
2022-11-24 18:54:25 +01:00
Rémi Verschelde 1fa80bf9d6
Merge pull request #67330 from KoBeWi/immortal_scenes
Don't free instanced scenes when recreating tiles
2022-11-24 18:54:08 +01:00
Rémi Verschelde 40e4a11b66
Merge pull request #68455 from Calinou/improve-editor-property-capitalization
Improve editor property capitalization
2022-11-24 18:53:56 +01:00
souplamp 51cf968e56 History dock singleton, set default editor layout, ready notification
- add the history dock to the default editor layout, so when a user does Editor -> Editor Layout -> Default the history dock will no longer disappear
- change the enter tree notification to a ready notification to prevent the history dock from trying to connect 'on_history_changed' signal everytime the dock is moved in the editor layout
2022-11-24 11:45:42 -06:00
VolTer a18afb9a56 Make it clearer that printraw only prints to terminal 2022-11-24 18:08:02 +01:00
K. S. Ernest (iFire) Lee baab97302a Cache materials in gltf as the abstract class of Material
Use the abstract material class instead of BaseMaterial3D. This allows inserting ShaderMaterials into gltf. Like in VRM.
2022-11-24 09:00:09 -08:00
Raul Santos d2f7314716
C#: Implement BezierDerivative
Adds `BezierDerivative` method to Mathf, Vector2 and Vector3 (already exposed in Core).
2022-11-24 17:55:07 +01:00
Zae f6424e68ea [TileMap] Fix alternative tile issues. 2022-11-25 00:44:02 +08:00
Hugo Locurcio aafa816946
Improve editor property capitalization
- Don't capitalize stop words such as "at", "in" or "to".
- Add more acronyms to capitalize.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-11-24 16:37:54 +01:00
Rémi Verschelde cd3d6e63a6
Merge pull request #69108 from akien-mga/gdscript-ignore-warnings-debug
GDScript: Only check if ignoring warnings in debug build
2022-11-24 16:07:16 +01:00
Rémi Verschelde 5d20dccade
Add MAKE_RESOURCE_TYPE_HINT macro to simplify binding arrays of resources 2022-11-24 14:06:00 +01:00
Rémi Verschelde f6f8a48459
Merge pull request #69107 from Mickeon/oops
Fix warning in Signal Documentation
2022-11-24 13:24:47 +01:00
Rémi Verschelde 4abefc0ede
Merge pull request #69105 from pkowal1982/opacity
Fix near one opacity in editor icons
2022-11-24 13:24:42 +01:00
Rémi Verschelde 9d9d8a7c90
Merge pull request #69089 from raulsntos/dotnet/docs-object
Fix C# documentation for Godot.Object
2022-11-24 13:24:37 +01:00
Rémi Verschelde eb8ce8d74e
Merge pull request #68833 from BastiaanOlij/improve_extension_logic
Improve logic for detecting and tracking extensions
2022-11-24 13:24:31 +01:00
Rémi Verschelde 53a8903f79
Merge pull request #68283 from zaevi/fix_float_dock_title
[Editor] Fix float dock shows incorrect title.
2022-11-24 13:24:14 +01:00
Silc Renew b217c41d36 Refactor interpolating functions in some classes to use Math class 2022-11-24 20:31:43 +09:00
Zae 4fdfc5176c [Editor] Fix float dock shows untranslated title. 2022-11-24 18:52:15 +08:00