Age | Commit message (Collapse) | Author |
|
Load X11 dynamically
|
|
Allow drag-clicking before symbol lookup
|
|
The loaders have been generated through hpvb's dynload-wrapper, although
they had to be heavily handpatched to workaround some already reported
issues with it. I added a note to each generated file to account for
that.
As GLAD uses X11 stuff directly, I had to define the GLAD_GLX_NO_X11
macro to not let do it that, and handle myself the display loading and
screen handling part myself, which wasn't that hard but it's still
something worth saying.
I plan to improve greatly the X11 backend (including this aspect) but,
as the release isn't that far and I'm also working on the Wayland
backend, this will do for now, I hope.
|
|
Allow black metallic materials to reflect IBL
|
|
Properly remap roughness when reading from radiance map
|
|
Improve usage of StringNames in GraphEdit
|
|
Fix missing parent class name identifier crash
|
|
Enable the navigation controls for touchscreen by default
|
|
Fix `Curve3D::get_closest_point()` broken
|
|
touilleMan/gdextension-fix-gdnative-types-const-qualifier
Fix const qualifier for parameters in GDExtension api functions
|
|
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.
|
|
|
|
|
|
BaseMaterial3D Docs: Fix wrong descriptions on roughness and refraction texture channels
|
|
|
|
Removes the mentions of ambient occlusion in the descriptions and replaces them with the appropriate texture channel.
|
|
This ensures that we consistently use perceptual roughness which matches the behaviour of most other PBR renderers like Blender, Ue4 and Godot 3
|
|
|
|
|
|
C#: Always convert float Variants to System.Double
|
|
Godot floats are always 64-bit.
The real_t feature only affects vectors, not scalars.
|
|
Fix C# Solution Directory Project Settings
|
|
C#: Cleanup of Marshaling methods
|
|
SCons: Strip symbol table for builds with `debug_symbols=no`
|
|
Co-authored-by: Ignacio Roldán Etcheverry <neikeq@users.noreply.github.com>
|
|
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`
|
|
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.
|
|
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.
|
|
[macOS] Improve maximized and non-resizable modes handling.
|
|
SCons: Disable openxr module with disable_3d=yes
|
|
Get WebXR fully working in Godot 4!
|
|
Add `animation_changed` signal to `AnimationLibrary`, have `AnimationPlayer` connect to it instead of `Animation`'s `changed`
|
|
Refactor process of animation to retrive keys more exactly
|
|
[RichTextEffect] Restore missing `relative_index` property.
|
|
Fix animation signal `caches_cleared` firing timing
|
|
ETCPAK expects BGRA data for ETC
|
|
Fixes #69470.
|
|
|
|
|
|
|
|
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`.
|
|
C#: Fix signature of generated signal callbacks
|
|
Update docs to clarify `@icon` only works with global script classes
|
|
Fix child nodes still being drawn when the visible area of a control with `clip_contents` enabled is `0`
|
|
Update thorvg to 0.8.3
|
|
Add Skeletons and Blend Shapes to the OpenGL renderer
|
|
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.
|
|
Add navigation control to the node3d editor viewport
|
|
Remove unneeded calc in root motion
|
|
Improve validation when setting `max`/`min`/`page` in `Range`
|