Commit Graph

51943 Commits

Author SHA1 Message Date
Rémi Verschelde b8e5b16506
Merge pull request #69523 from m4gr3d/fix_navigation_control_default_main
Enable the navigation controls for touchscreen by default
2022-12-03 12:45:35 +01:00
Rémi Verschelde 33dd934111
Merge pull request #69239 from xiongyaohua/fix_69220
Fix `Curve3D::get_closest_point()` broken
2022-12-03 12:45:27 +01:00
Rémi Verschelde 8cf1beaea8
Merge pull request #67751 from touilleMan/gdextension-fix-gdnative-types-const-qualifier
Fix const qualifier for parameters in GDExtension api functions
2022-12-03 12:40:23 +01:00
Yaohua Xiong 69f84563a3 Fix Curve3D::get_closest_point() broken
The problem is caused by calling adaptive tessellation baking function by mistake, which produce too few points for straight lines. Calling the even length tessellation fix the problem.

The code for `get_closest_point()` and `get_closest_offset()` are also updated. They used to assume bake interval to be exact, which is no longer true.

The out dated document for `get_closest_point()` is also updated.
2022-12-03 17:01:03 +08:00
Fredia Huya-Kouadio eacb29c007 Minor tweaks/polish to the navigation controls to prevent interference:
- Reduce controls size
- Enable opacity on hover to increase visibility
2022-12-02 23:17:38 -08:00
Fredia Huya-Kouadio 18b924def7 Enable the navigation controls for touchscreen by default 2022-12-02 20:47:32 -08:00
clayjohn 1e05dd3504 Allow black metallic materials to reflect IBL 2022-12-02 19:54:59 -08:00
Clay John 30800d20f4
Merge pull request #69515 from Error-In-Code/basematerial3d-doc-cleanup
BaseMaterial3D Docs: Fix wrong descriptions on roughness and refraction texture channels
2022-12-02 19:38:15 -08:00
Adam Scott 7bcaa9df9e Fix missing parent class name identifier crash 2022-12-02 21:30:19 -05:00
[Error:27] 2d7793ed4a Make Roughness and Refraction not mention AO
Removes the mentions of ambient occlusion in the descriptions and replaces them with the appropriate texture channel.
2022-12-02 21:03:42 -05:00
clayjohn b2b89d7294 Properly remap roughness when reading from radiance map
This ensures that we consistently use perceptual roughness which matches the behaviour of most other PBR renderers like Blender, Ue4 and Godot 3
2022-12-02 15:39:20 -08:00
Emmanuel Leblond 61c900ac6f
Fix const qualifier for parameters in GDExtension api functions 2022-12-02 23:00:01 +01:00
kobewi 5490c22ffb Improve usage of StringNames in GraphEdit 2022-12-02 22:57:23 +01:00
Ignacio Roldán Etcheverry 6f1d4fd887
Merge pull request #69498 from raulsntos/dotnet/float64
C#: Always convert float Variants to System.Double
2022-12-02 20:46:44 +01:00
Raul Santos fbd41a6eda
C#: Always convert float Variants to System.Double
Godot floats are always 64-bit.
The real_t feature only affects vectors, not scalars.
2022-12-02 17:04:11 +01:00
Rémi Verschelde f3c68d6c83
Merge pull request #69391 from NeilKleistGao/sln
Fix C# Solution Directory Project Settings
2022-12-02 16:48:30 +01:00
Rémi Verschelde d746b618be
Merge pull request #69428 from neikeq/no
C#: Cleanup of Marshaling methods
2022-12-02 16:48:17 +01:00
Rémi Verschelde 92b6991d2f
Merge pull request #69484 from akien-mga/scons-gcc-clang-strip-non-debug
SCons: Strip symbol table for builds with `debug_symbols=no`
2022-12-02 16:48:09 +01:00
NeilKleistGao 2bab84c8c7 Fix C# solution directory settings
Co-authored-by: Ignacio Roldán Etcheverry <neikeq@users.noreply.github.com>
2022-12-02 22:01:15 +08:00
Ignacio Roldán Etcheverry 17b2838f39 C#: Cleanup Variant marshaling code in source/bindings generators
This change aims to reduce the number of places that need to be changed
when adding or editing a Godot type to the bindings.

Since the addition of `Variant.From<T>/As<T>` and
`VariantUtils.CreateFrom<T>/ConvertTo<T>`, we can now replace a lot of
the previous code in the bindings generator and the source generators
that specify these conversions for each type manually.

The only exceptions are the generic Godot collections (`Array<T>` and
`Dictionary<TKey, TValue>`) which still use the old version, as that
one cannot be matched by our new conversion methods (limitation in the
language with generics, forcing us to use delegate pointers).

The cleanup applies to:

- Bindings generator:
  - `TypeInterface.cs_variant_to_managed`
  - `TypeInterface.cs_managed_to_variant`
- Source generators:
  - `MarshalUtils.AppendNativeVariantToManagedExpr`
  - `MarshalUtils.AppendManagedToNativeVariantExpr`
  - `MarshalUtils.AppendVariantToManagedExpr`
  - `MarshalUtils.AppendManagedToVariantExpr`
2022-12-02 14:47:12 +01:00
Ignacio Roldán Etcheverry f86c6b6ac4 C#: Replace most conversions between Variant and System.Object
This commit replaces most usages of `ConvertManagedObjectToVariant` and
`ConvertVariantToManagedObjectOfType`, by using the `Godot.Variant`
struct instead of `System.Object`.

The most notable change is to the `GetGodotPropertyDefaultValues` method
that's generated for scripts. The dictionary it returns now stores
`Godot.Variant` values.

Remaining usages are:

- The `DelegateUtils` class, for the serialization of closure display
  classes during assembly reloading by the editor. These display classes
  are compiler generated classes to store values captured by a closure.
  Since it's generated by the compiler, the only way we have to access
  the fields is through reflection. This leads to using `System.Object`.
- Converting parameters when invoking constructors from the engine.
  This will be replaced with source generators in the future.
- Legacy support for old `GetGodotPropertyDefaultValues` return values.
  We need to keep supporting the old version of this generated method
  for some time. Otherwise, if loading a project built with the previous
  version, it could lead to the loss of exported property values.
  Ideally, we should remove this legacy support before a stable release.
2022-12-02 14:47:12 +01:00
Rémi Verschelde 01ae54615e
SCons: Strip symbol table for builds with `debug_symbols=no`
This is equivalent to calling `strip` on the resulting binary, which is what
we do for official builds.

This applies for GCC/Clang.
For MSVC `/DEBUG:NONE` should already be the default.
2022-12-02 13:23:46 +01:00
Silc Renew 83135aa122 Remove UPDATE_TRIGGER & Match behaviors between AnimationTree/Player
#69357
2022-12-02 20:28:10 +09:00
Rémi Verschelde 7bffdca41c
Merge pull request #69380 from bruvzg/mac_max_ws
[macOS] Improve maximized and non-resizable modes handling.
2022-12-02 12:25:25 +01:00
Rémi Verschelde 23c58be800
Merge pull request #69483 from akien-mga/openxr-3d-only
SCons: Disable openxr module with disable_3d=yes
2022-12-02 12:24:58 +01:00
Rémi Verschelde 7ef9947d0e
Merge pull request #68870 from dsnopek/master-webxr-input
Get WebXR fully working in Godot 4!
2022-12-02 12:24:40 +01:00
Rémi Verschelde 8c094207a0
Merge pull request #61958 from jtnicholl/animation_connections
Add `animation_changed` signal to `AnimationLibrary`, have `AnimationPlayer` connect to it instead of `Animation`'s `changed`
2022-12-02 12:24:32 +01:00
Rémi Verschelde 10e9a85607
Merge pull request #69336 from TokageItLab/get-anim-keys-more-exactly
Refactor process of animation to retrive keys more exactly
2022-12-02 12:24:24 +01:00
Rémi Verschelde 3ce539cad9
Merge pull request #69475 from bruvzg/rtl_fx_idx
[RichTextEffect] Restore missing `relative_index` property.
2022-12-02 12:24:13 +01:00
Rémi Verschelde e9b67569f7
Merge pull request #69474 from TokageItLab/fix-animation-cache-signal
Fix animation signal `caches_cleared` firing timing
2022-12-02 12:24:06 +01:00
Rémi Verschelde 801080a6ab
Merge pull request #69448 from BastiaanOlij/fix_etc_rgba_bgra_issue
ETCPAK expects BGRA data for ETC
2022-12-02 12:23:49 +01:00
Rémi Verschelde 75d5dfe591
SCons: Disable openxr module with disable_3d=yes
Fixes #69470.
2022-12-02 11:40:24 +01:00
Yuri Rubinsky 5eeebb3e37 Fix new quick open dialog to be showed at the center of the screen 2022-12-02 11:11:54 +03:00
bruvzg 0541c746ee
[RichTextEffect] Restore missing `relative_index` property. 2022-12-02 09:50:54 +02:00
Silc Renew 962b6a3e8f Fix animation signal caches_cleared firing timing 2022-12-02 15:02:36 +09:00
David Snopek 310bf39cd3 Get WebXR fully working in Godot 4! 2022-12-01 21:46:30 -06:00
Ignacio Roldán Etcheverry 3afeb28560 C#: Remove `ConvertVariantToManagedObject`
Its two usages were:

- The Array `ICollection.CopyTo` implementation.
  It's possible that this class shouldn't be implementing the
  non-generic `ICollection`, but this commit doesn't change that.
  The new implementation stores the elements as boxed `Variant` values.
- The `Variant.Obj` property.
  I'm not sure if this property's existence is justified, but for now
  I rewrote it as a simpler version of `ConvertVariantToManagedObject`.
2022-12-02 03:34:40 +01:00
Ignacio Roldán Etcheverry bcc061edae
Merge pull request #67023 from raulsntos/dotnet/fix-signal-callback-generation
C#: Fix signature of generated signal callbacks
2022-12-02 03:19:49 +01:00
rune-scape d531869a7c GDScript: Fix subclass script path issues 2022-12-01 20:43:27 -05:00
Yuri Sizov bf9cf7d034
Merge pull request #69166 from souplamp/icon-annotation-not-working
Update docs to clarify `@icon` only works with global script classes
2022-12-02 03:04:23 +03:00
kobewi e9a3e49086 Cleanup function state connections when destroying instance
Co-authored-by: Adam Scott <ascott.ca@gmail.com>
2022-12-02 00:20:11 +01:00
kobewi 7e2a8afb57 Rework how current Camera2D is determined 2022-12-02 00:05:02 +01:00
Rémi Verschelde 1bd7b0b269
Merge pull request #69430 from Rindbee/fix-clip-contents
Fix child nodes still being drawn when the visible area of a control with `clip_contents` enabled is `0`
2022-12-01 23:55:18 +01:00
Rémi Verschelde d47daf0187
Merge pull request #69344 from DeeJayLSP/update_thorvg
Update thorvg to 0.8.3
2022-12-01 23:51:33 +01:00
Rémi Verschelde 8177e5d7de
Merge pull request #69325 from clayjohn/GLES3-skeletons
Add Skeletons and Blend Shapes to the OpenGL renderer
2022-12-01 23:22:42 +01:00
rune-scape 0591f0ad37 Fix editor help crash 2022-12-01 16:47:02 -05:00
souplamp 369c7d2422 Update docs to mention `@icon` only works with global script classes
Update the docs to clarify that the `@icon` annotation does not work
when only attaching a script to a node, and clarify that the script itself
must be a globally accessible script type.
2022-12-01 12:52:58 -06:00
Gilles Roudière fa4143cdeb Allow specifying a prefix to automatically detect library files for gdextension exports 2022-12-01 18:20:40 +01:00
Rémi Verschelde 1e3919c409
Merge pull request #69364 from m4gr3d/add_navigation_controls_main
Add navigation control to the node3d editor viewport
2022-12-01 18:11:14 +01:00
Rémi Verschelde a7fcfacaa5
Merge pull request #69427 from TokageItLab/remove-wrong-method-root-pos
Remove unneeded calc in root motion
2022-12-01 18:11:07 +01:00