Commit Graph

10278 Commits

Author SHA1 Message Date
George Marques 8e520454ef
GDScript: Add @export_custom annotation
Allows setting any arbitrary hint, hint string, and usage flags.
Useful for more complex hints or potential future hints not
available as a dedicated annotation.
2024-03-07 10:55:21 -03:00
Rémi Verschelde 0acc4276b6
Merge pull request #82952 from AbelToy/gds-export-array
Allow `@export`ed Arrays to set property hints for their elements
2024-03-06 09:49:53 +01:00
Abel Toy 882441a0ad
Support Array and PackedArray in @export_* 2024-03-06 16:17:54 +09:00
Hugo Locurcio 8221e7546b
Add editor shortcuts to toggle bottom panel visibility
Default shortcuts use the first or second letter of each word.

This also adds a new shortcut to toggle the last opened bottom panel.
On editor startup, this defaults to the first panel in the list
(which is the Output panel).
2024-03-05 15:53:15 +01:00
Rémi Verschelde b59166d77a
Merge pull request #89171 from bruvzg/fix_fb_breaks
[TextServer] Fix fallback line breaking code adding two breaks for CR-LF.
2024-03-05 09:56:22 +01:00
RedMser 2bd714e34e
Allow configuring the script filename casing rule
Defaults to "Auto", which detects the casing based on the
preference of the currently selected language (C# for example
prefers PascalCase whereas GDScript prefers snake_case).
2024-03-05 09:43:29 +01:00
bruvzg b58e45ed43
[TextServer] Fix fallback line breaking code adding two breaks for CR-LF. 2024-03-05 09:15:11 +02:00
A Thousand Ships 1e61e42250
[GDScript] Fix some test file paths 2024-03-04 19:11:28 +01:00
Rémi Verschelde e40010a8e1
Merge pull request #89108 from Faless/mp/fix_config_reload
[MP] Fix replication config reload error
2024-03-04 13:34:22 +01:00
Rémi Verschelde dd2a611118
Merge pull request #89092 from AThousandShips/csharp_doc
[C#] Fix typo in `Color` documentation
2024-03-04 13:34:06 +01:00
Rémi Verschelde 6315429999
Merge pull request #89007 from paulloz/dotnet/fix-interpolated-string-scriptpropertydefval
[.NET] Fix interpolated strings in ScriptPropertyDefVal
2024-03-04 13:33:25 +01:00
Rémi Verschelde 7be96a55c4
Merge pull request #86973 from HolonProduction/tests-batch-1
Add tests for `get_node` autocompletion
2024-03-04 13:32:55 +01:00
Rémi Verschelde b392ab5ff4
Merge pull request #85918 from 20kdc/tnj-static-called-on-instance-fix-confusion
GDScript: Adjust `STATIC_CALLED_ON_INSTANCE` warning to not force native type
2024-03-04 13:32:47 +01:00
Rémi Verschelde 5d3369e095
Merge pull request #85153 from Repiteo/scons-improve-logs
SCons: Add two new `COMSTR` environment variables
2024-03-04 13:32:38 +01:00
Rémi Verschelde 1598af5668
Merge pull request #83504 from Repiteo/c#-generator-langword-check
C#: Bindings generator langword check
2024-03-04 13:32:34 +01:00
Fabio Alessandrelli 45e8fa10c1 [MP] Fix replication config reload error
Override the `reset_state` method to properly handle reloading the
resource from disk.
2024-03-03 11:13:00 +01:00
A Thousand Ships 5aadb8660b
[C#] Fix typo in `Color` documentation 2024-03-02 18:13:01 +01:00
Rémi Verschelde f2045ba822
Merge pull request #88933 from raulsntos/dotnet/pre-commit
Move dotnet-format script to pre-commit
2024-03-02 10:48:25 +01:00
Raul Santos 97851f0340
Move dotnet-format script to pre-commit
Co-authored-by: Paul Joannon <437025+paulloz@users.noreply.github.com>
2024-03-02 08:25:48 +01:00
Thaddeus Crews 0ce9b6fd1d
Add two new COMSTR environment variables 2024-03-01 12:44:03 -06:00
Rémi Verschelde 34effe41dc
Merge pull request #89036 from Mickeon/documentation-uncommon-words-2
Overhaul some "uncommon" wording in class reference
2024-03-01 17:22:18 +01:00
Rémi Verschelde 0e0f564cea
Merge pull request #89021 from wheatear-dev/test-crypto-key
Add unit tests for CryptoKey
2024-03-01 17:22:12 +01:00
Micky c54e09a5a3 Overhaul some "uncommon" wording in class reference 2024-03-01 15:32:38 +01:00
20kdc 24181d1055
GDScript: Adjust STATIC_CALLED_ON_INSTANCE warning to not default to the native type, and to not trigger on self-calls
Not defaulting to the native type rationale:

Defaulting to the native type is less than useful, as:

* There are very few native types that are extensible and have static methods.
* Defaulting to the native type does not account for a method being script-defined.

While the "real fix" would be to carefully track the source of the method, the get_function_signature method is already complicated enough.

This will at least ensure the resulting code should always be valid.

Not triggering on self-calls rationale:

Found in PR comment https://github.com/godotengine/godot/pull/85918#issuecomment-1935864459

```
static func example():
	pass

func example2():
	example() # self-call on static function
```

Disabling this warning on self-calls is:

* Consistent with other languages
* Important for anonymous classes (where the output code is unusable)
2024-03-01 17:14:59 +03:00
Micky 7b3e1a5bde Optimize SceneTree's `change_scene_to_file` autocompletion 2024-03-01 15:12:52 +01:00
HolonProduction a2e7c64dc4 Cleanup 2024-03-01 13:06:37 +01:00
HolonProduction 1f42455e0a Debugging additions 2024-03-01 11:38:49 +01:00
Paul Joannon 42233284b1
Fix interpolated strings in ScriptPropertyDefVal 2024-03-01 11:24:46 +01:00
HolonProduction fc7d7d3dae Add test for `get_node` autocompletion 2024-03-01 11:24:06 +01:00
Jakub Marcowski 973448ec4c
clipper2: Update to 1.3.0 2024-03-01 11:12:59 +01:00
Edward Moulsdale e461496ecb Add unit tests for CryptoKey 2024-03-01 07:17:59 +00:00
Rémi Verschelde 7d2ca2d8ac
Merge pull request #89005 from dalexeev/gds-fix-res-format-loader-path
GDScript: Fix paths in `ResourceFormatLoaderGDScript::load()`
2024-02-29 15:18:55 +01:00
Rémi Verschelde b0c184c9c9
Merge pull request #88994 from TCROC/fix-c#-missing-epsilon-64bit
Fix C# epsilon compiler error on double precision build
2024-02-29 15:18:47 +01:00
Travis Lange 09c6cb1250 Fix C# epsilon compiler error on double precision build 2024-02-29 08:25:37 -05:00
Danil Alexeev 0908ad4005
GDScript: Fix paths in `ResourceFormatLoaderGDScript::load()` 2024-02-29 16:04:31 +03:00
Rémi Verschelde 7434f8b4e3
Merge pull request #88959 from akien-mga/pre-commit-clang-17.0.6-black-24.2.0
Pre-commit: Update to clang-format 17.0.6 and black 24.2.0
2024-02-29 13:54:38 +01:00
Rémi Verschelde 9101067666
Merge pull request #88958 from 398utubzyt/gltf/use-correct-name
Fix compilation errors when `DISABLE_DEPRECATED` is defined
2024-02-29 13:54:35 +01:00
Rémi Verschelde 9278856ff7
Merge pull request #88948 from dalexeev/core-add-callable-create
Core: Add `Callable.create` static method for `Variant` callables
2024-02-29 13:54:22 +01:00
Rémi Verschelde c9b531c613
Merge pull request #88920 from AThousandShips/group_doc_fix
[Doc] Fix some incorrect uses of "children"
2024-02-29 13:54:18 +01:00
Rémi Verschelde d194378043
Merge pull request #88904 from akien-mga/efs-tell-me-what-you-import
EditorFileSystem: Add verbose print for file being (re)imported
2024-02-29 13:54:14 +01:00
Rémi Verschelde 172b254687
Merge pull request #88664 from RandomShaper/res_load_modes
Enhance cache modes in resource loading
2024-02-29 13:54:07 +01:00
A Thousand Ships 9b5cd8e240
[Doc] Fix some incorrect uses of "children" 2024-02-29 11:52:55 +01:00
Danil Alexeev d90c9db27f
Core: Add `Callable.create` static method for `Variant` callables 2024-02-29 10:45:00 +03:00
Rémi Verschelde 3a08c646ee
Pre-commit: Update to clang-format 17.0.6 and black 24.2.0 2024-02-28 14:25:35 +01:00
398utubzyt 4c69e8c026 Fix compilation errors when `DISABLE_DEPRECATED` is defined 2024-02-28 05:09:29 -08:00
Rémi Verschelde 093cdd2188
EditorFileSystem: Add verbose print for file being (re)imported
Also print the time it took for each file.
2024-02-28 09:59:46 +01:00
Rémi Verschelde ac4376814b
Merge pull request #88931 from clayjohn/GLTF-normals
Fix wrong indexing when generating dummy tangents in GLTF import
2024-02-27 21:23:14 +01:00
Rémi Verschelde ed2ff19cd7
Merge pull request #88909 from emre0altan/clarify-c#-color-opacity-comment
Clarify C# Color opacity comment
2024-02-27 21:23:07 +01:00
Rémi Verschelde a64cb8eff3
Merge pull request #88570 from paulloz/dotnet/warnings-editorconfig-cleanup
[.NET] Better `.editorconfig` setup in `modules/mono/`
2024-02-27 21:23:03 +01:00
Rémi Verschelde 21ee3716c2
Merge pull request #82122 from dalexeev/gds-add-export-hidden-annotation
GDScript: Add `@export_storage` annotation
2024-02-27 21:22:49 +01:00
clayjohn 14c776f798 Fix wrong indexing when generating dummy tangents in GLTF import 2024-02-27 11:44:57 -08:00
Paul Joannon 139a5df821
Cleanup C# projects, code quality & style
New rules:
- Do not silence CA1805 any more
- Limit where we silence CA1707, CA1711, CA1720
- Enforce severity=warning for IDE0040
- Enforce Allman style braces
- Enforce naming conventions (IDE1006 is still severity=suggestion)

Fixes:
- Fix REFL045, CS1572, CS1573
- Suppress CS0618 when generating `InvokeGodotClassMethod`
- Fix indent when generating GD_constants.cs
- Temporarily silence CS1734 in generated code
- Fix a lot of naming rule violations

Misc.:
- Remove ReSharper comments for RedundantNameQualifier
- Remove suppression attributes for RedundantNameQualifier
- Remove severity=warnings for CA1716, CA1304 (already included in the level of analysis we run)
2024-02-27 20:11:24 +01:00
Rémi Verschelde f5dbbf7fd0
Merge pull request #88921 from Repiteo/dotnet/deprecate-check-fix
C#: Only check for empty deprecation message if deprecated
2024-02-27 18:27:10 +01:00
Thaddeus Crews be7019de0f
C#: Only check for empty deprecation message if deprecated 2024-02-27 10:22:32 -06:00
blackbird806 e2f1af8742
Remove self includes in some files 2024-02-27 17:10:54 +01:00
emre0altan 4100a23c5e Clarify C# Color opacity comment 2024-02-27 15:56:21 +00:00
Rémi Verschelde 21e3b2111e
Merge pull request #88862 from smix8/split_physics_classes
Split monolithic physics class files
2024-02-27 16:37:07 +01:00
smix8 35dafc9fa8 Split monolithic physics class files
Splits monolithic physics class files.
2024-02-27 11:18:16 +01:00
Rémi Verschelde 0499b57d9e
Merge pull request #88876 from dalexeev/gds-fix-type-highlighting-after-whitespace
GDScript: Fix type highlighting after whitespace
2024-02-27 10:18:42 +01:00
Rémi Verschelde bbe263d329
Merge pull request #88823 from jsjtxietian/limit-NoiseTexture3D
Do overflow check in when generating NoiseTexture3D
2024-02-27 10:18:09 +01:00
Rémi Verschelde 3780604d79
Merge pull request #88819 from lyuma/import_nodes_as_skeleton_bones
Add new scene import option to import as Skeleton
2024-02-27 10:18:00 +01:00
Rémi Verschelde 8f98ed65f7
Merge pull request #88738 from clayjohn/mesh_compression-tangents
Multiple fixes for compressed meshes
2024-02-27 10:17:43 +01:00
Rémi Verschelde 730ef374b4
Merge pull request #88652 from RobProductions/fix-hover-margin
Fix editor hover style margins when Draw Extra Borders is enabled
2024-02-27 10:17:34 +01:00
jsjtxietian 3d17aaca71 Do overflow check in when gererating NoiseTexture3D 2024-02-27 12:20:03 +08:00
Danil Alexeev a10241bfe4
GDScript: Fix type highlighting after whitespace 2024-02-26 20:49:05 +03:00
Pedro J. Estébanez 5e144022e7 Enhance cache modes in resource loading
- Unify documentation, hoping to clear misconcepctions about about propagation of the cache mode across dependant loads.
- Clarify in docs that `CACHE_MODE_REPLACE` now also works on the main resource (from #87008).
- Add two recursive modes, counterparts of `CACHE_MODE_REPLACE` and `CACHE_MODE_IGNORE`, since it seems some need them (see #59669, #82830).
- Let resources, even loaded with one of the ignore-cache modes, get a path, which is useful for tools.
2024-02-26 14:59:04 +01:00
Aaron Franke c399424db9
Move 3D-only resources to their own folder 2024-02-26 05:23:04 -06:00
Aaron Franke 1cb531ddb6
Move 2D-only resources to their own folder 2024-02-26 05:22:45 -06:00
Lyuma 652ef966f9 Add new scene import option to import as Skeleton
Adds a bool import option `nodes/import_as_skeleton_bones`.
This is supported in all FBX or GLTF document based formats.
It is especially useful for retargeting and importing animations.
2024-02-26 03:06:07 -08:00
Aaron Franke 138180fe01
Move 3D-only navigation code to its own subfolder 2024-02-26 04:19:12 -06:00
Aaron Franke fd582dca62
Move 2D-only navigation code to its own subfolder 2024-02-26 04:18:13 -06:00
Rémi Verschelde 99addd6d9c
Merge pull request #88853 from dalexeev/gds-canonicalize-fqcn
GDScript: Canonicalize script path in FQCN
2024-02-26 10:49:44 +01:00
Rémi Verschelde 924e579f96
Merge pull request #88826 from mhilbrunner/net-fix-has-erase
Networking scene multiplayer: Fix removing connected peer during disconnection
2024-02-26 10:49:25 +01:00
Rémi Verschelde f91e74a179
Merge pull request #88754 from BastiaanOlij/fix_openxr_eye_gaze_init
OpenXR: Register eye gaze even when disabled
2024-02-26 10:49:09 +01:00
Rémi Verschelde 762ea7a0b2
Merge pull request #88730 from raulsntos/dotnet/deprecated-message
C#: Add deprecated message to generated bindings
2024-02-26 10:49:05 +01:00
Rémi Verschelde 5059dd91f3
Merge pull request #88692 from nongvantinh/fix-88543
Fix Script Editor saves C# files as embedded scripts.
2024-02-26 10:49:01 +01:00
Rémi Verschelde 9509a9e8dd
Merge pull request #83691 from theraot/slidedocs
Expanded documentation for vector slide and project
2024-02-26 10:48:37 +01:00
Danil Alexeev 8ffc50ee8c
GDScript: Canonicalize script path in FQCN 2024-02-26 10:46:24 +03:00
Max Hilbrunner bd8380db55 Fix removing connected peer during disconnection 2024-02-25 18:44:02 +01:00
Nông Văn Tình c5e6a5863d Fix Script Editor saves C# files as embedded scripts
fixes: #88543
fixes: #88160

Because of the limitations of compiled programming languages like C#, when a newly created *.cs file hasn't been compiled, we don't have any information about its `Path` or `Type` in the `assemply`. This means we end up creating an invalid instance of this file whenever there's a request. Consequently, multiple instances of the script can exist. When a new instance takes over the path, it clears the `path_cache` of the previous instance, leading to undefined behavior.
2024-02-25 22:08:18 +07:00
Rémi Verschelde 83b32f990e
Merge pull request #88733 from ryevdokimov/Remove-word-duplicates
Remove word duplicates in comments and strings, and fix casing and punctuation
2024-02-25 11:50:09 +01:00
Rémi Verschelde ee5ace10b7
Merge pull request #85501 from /remove-packed-scene-cache 2024-02-25 11:49:27 +01:00
Bastiaan Olij 6fd897973f OpenXR: Register eye gaze even when disabled 2024-02-24 17:32:58 +11:00
clayjohn 781cd27fe4 Avoid singularity when generated tangents and validate that tangents are good enough when using compression 2024-02-23 16:25:26 -08:00
Robert Yevdokimov 13e82094ee Remove word duplicates in comments and strings, and fix casing and punctuation 2024-02-23 17:28:28 -05:00
David Snopek fa81e12588 Fix lint errors in WebXR module 2024-02-23 16:24:58 -06:00
Rémi Verschelde cf9de66389
Merge pull request #88411 from dsnopek/webxr-hand-tracking
WebXR: Add support for hand tracking
2024-02-23 22:57:46 +01:00
K. S. Ernest (iFire) Lee 04d43947bf
Add ufbx for FBX importing
This update introduces a new import method for FBX files using ufbx. If the fbx2gltf import fails, it will use the most recently cached scene from the ufbx import. The process is sped up by introducing threads to load the ufbx portion.

Key changes include:

- Support for importing geometry helper nodes in FBX files.
- Addition of cameras and lights with updated names.
- Removal of the fbx importer manager.
- Introduction of ModelDocument3D and updates to its methods.
- Changes to FBX import options and visibility.
- Updating the documentation and handling some errors.
- Store the original non-unique node, mesh and animation names in FBX and glTF.

Co-Authored-By: bqqbarbhg <bqqbarbhg@gmail.com>
2024-02-23 22:33:04 +01:00
David Snopek 7fa8ccd1ed WebXR: Add support for hand tracking 2024-02-23 15:30:10 -06:00
Rémi Verschelde 41f39cfa04
Merge pull request #88724 from AThousandShips/xr_build_fix
[XR] Fix building on MinGW
2024-02-23 22:19:28 +01:00
Rémi Verschelde 0d83267923
Merge pull request #88639 from dsnopek/xrserver-hand-tracker
Provide generic interface for XR hand tracking
2024-02-23 22:19:05 +01:00
Rémi Verschelde 77666286b7
Merge pull request #88020 from emre0altan/match-null-crashes-GDScript-compiler
GDScript: Set `has_type` false if it is `BUILTIN` but `Variant::NIL`
2024-02-23 22:18:55 +01:00
Rémi Verschelde 4582ee1a0f
Merge pull request #87760 from kitbdev/extract-bottom-dock
Extract BottomPanel from EditorNode
2024-02-23 22:18:50 +01:00
Raul Santos 40b7dd0cf3
C#: Add deprecated message to generated bindings
Uses the `DocData` deprecated message in the C# `[Obsolete]` attribute added to deprecated members.
2024-02-23 20:30:36 +01:00
David Snopek 2184fa9698 Provide generic interface for XR hand tracking 2024-02-23 12:20:22 -06:00
A Thousand Ships efeb6be084
[XR] Fix building on MinGW
Destructor was defined in multiple places due to multiple inheritance
2024-02-23 19:10:33 +01:00
bruvzg ad017a20ea
[TextServer] Implement soft hyphen handling. 2024-02-23 12:40:13 +02:00
Rémi Verschelde 60b927b4cf
Merge pull request #88689 from dsnopek/openxr-extension-wrapper-crash
Fix crash when using OpenXR extension wrappers from GDExtension
2024-02-23 11:29:54 +01:00
Rémi Verschelde 3ce9ae71fc
Merge pull request #84906 from /fix-some-defvals 2024-02-23 11:29:22 +01:00
Raul Santos 5ba92e5a57
Fix some DEFVALs to use the right type
- Use `StringName()` in DEFVAL for StringNames.
- Use `Variant()` in DEFVAL for Variants.
2024-02-23 01:50:18 +01:00