Commit graph

7803 commits

Author SHA1 Message Date
Rémi Verschelde
5bcf016f11
Merge pull request #62737 from kidrigger/gdext_videodecoder
Updates VideoDecoder plugin API to GDExt.
2023-01-31 11:04:56 +01:00
Rémi Verschelde
99a44f8469
Merge pull request #69248 from vonagam/fixing-typed-arrays
GDScript: Fix typed arrays
2023-01-31 11:04:21 +01:00
Dmitrii Maganov
5909f9f075 GDScript: Fix issues with typed arrays 2023-01-31 11:54:41 +02:00
Rémi Verschelde
d14d6033a5
Merge pull request #72441 from bruvzg/lbl3d_aaa
[Sprite3D/Label3D] Expose alpha antialiasing properties.
2023-01-31 10:54:13 +01:00
Rémi Verschelde
c8446754dd
Merge pull request #72357 from aaronfranke/area-gravity-unit-dist
Replace Area gravity point distance scale with unit distance
2023-01-31 10:53:16 +01:00
Rémi Verschelde
c6d066d20c
Merge pull request #72413 from addmix/addmix/master
Added documentation note for `add_custom_type()`
2023-01-31 10:53:11 +01:00
Rémi Verschelde
628967e6ba
Merge pull request #72343 from clayjohn/editor-canvas-bg
Remove viewport_set_disable_environment in favor of viewport_set_environment_mode
2023-01-31 10:53:05 +01:00
bruvzg
b4fe514aa3
[Sprite3D/Label3D] Expose alpha antialiasing properties. 2023-01-31 10:46:38 +02:00
anish bhobe
42a9c33fad Updates VideoDecoder plugin API to GDExtension.
Adds VideoStream and relevant resource loaders to migrate
external GDNative plugins to GDExtension.

Adds a VideoStreamLoader as a specialization of ResourceFormatLoader
as ClassDB::is_parent_class is inaccessible from GDExtension currently.

Using Object* instead of Ref<T> in order to avoid the refcount bug
(godotengine/godot-cpp#652)
Also another bug is in ResourceLoader in use on the extension side that
requires fixing.
2023-01-30 18:39:29 -08:00
addmix
3c1c965b85 Added documentation note for add_custom_type() 2023-01-30 14:02:31 -07:00
clayjohn
9071809021 Remove viewport_set_disable_environment in favor of viewport_set_environment_mode
This allows us to set a default value inherited by child viewports and have child viewports set the value themselves which is needed for disabling the environment in the editor
2023-01-30 12:25:49 -08:00
Rémi Verschelde
e9de988020
Merge pull request #72031 from reduz/change-high-quality-texture-import
Refactor high quality texture import
2023-01-30 20:41:01 +01:00
Silc Renew
a0c4f849e0 Consistent with NodeBlendSpace1D option NodeBlendSpace2D
Co-authored-by: Skrapion <rick@firefang.com>
2023-01-31 02:14:55 +09:00
Rémi Verschelde
551f5191e5
Merge pull request #72388 from TokageItLab/transition-reset-each
Allow the Reset option of NodeTransition to be set for each Input
2023-01-30 17:35:00 +01:00
Rémi Verschelde
a5cefef2d8
Merge pull request #72381 from yedpodtrzitko/yed/update-fileaccess-docs
docs: replace `File` with `FileAccess`
2023-01-30 17:34:56 +01:00
Silc Renew
2dd3abd0c5 Allow the Reset option of NodeTransition to be set for each Input 2023-01-31 00:40:45 +09:00
Juan Linietsky
28f51ba547 Refactor high quality texture import
* Only two texture import modes for low/high quality now:
  * S3TC/BPTC
  * ETC2/ASTC
* Makes sense given this is the general preferred and most compatible combination in most platforms.
* Removed lossy_quality from VRAM texture compression options. It was unused everywhere.
* Added a new "high_quality" option to texture import. When enabled, it uses BPTC/ASTC (BC7/ASTC4x4) instead of S3TC/ETC2 (DXT1-5/ETC2,ETCA).
* Changed MacOS export settings so required texture formats depend on the architecture selected.

This solves the following problems:

* Makes it simpler to import textures as high quality, without having to worry about the specific format used.
* As the editor can now run on platforms such as web, Mac OS with Apple Silicion and Android, it should no longer be assumed that S3TC/BPTC is available by default for it.
2023-01-30 15:53:23 +01:00
Jiri Suchan
4a4adec33d docs: replace File with FileAccess 2023-01-30 22:43:08 +08:00
Rémi Verschelde
af57bdb193
Merge pull request #72305 from dalexeev/gfs-fix-export-enum
GDScript: Fix `@export_enum` works only with `int`
2023-01-30 14:47:12 +01:00
Rémi Verschelde
312011fade
Fix various typos with codespell
And include #72377.

Co-authored-by: Wiktor Kocielski <withaust@gmail.com>
2023-01-30 14:22:47 +01:00
Rémi Verschelde
6d6d6592c9
Merge pull request #71989 from bruvzg/set_typed_move
Move Array:set_typed to internal GDExtension structure and unexposed it.
2023-01-30 13:28:40 +01:00
Rémi Verschelde
bde3310f02
Merge pull request #71995 from Faless/net/4.x_tls_verify
[NET] Refactor TLS configuration.
2023-01-30 13:28:31 +01:00
bruvzg
5aa87ccc03
Move Array:set_typed to internal GDExtension structure and unexposed it. 2023-01-30 14:23:31 +02:00
Danil Alexeev
be4f36b87e
Remove @GDScript.str (duplicate of @GlobalScope.str) 2023-01-30 14:29:07 +03:00
Danil Alexeev
d4b78c352f
GDScript: Fix @export_enum works only with int 2023-01-30 12:30:37 +03:00
Rémi Verschelde
38f8411ed8
Merge pull request #71964 from bruvzg/mat_key
Fix unsafe murmur3 hash use for the default material keys, expose alpha hash transparency mode for default materials and Label3D and Sprite3D.
2023-01-30 10:03:49 +01:00
Rémi Verschelde
62b0bfd343
Merge pull request #71657 from m4gr3d/increase_scroll_bar_size_for_touchscreen_main
Update the size of the scrollbar for the editor on touchscreen devices
2023-01-30 10:03:40 +01:00
Raul Santos
54f8fb010c
Sync C# Array with Core
- Add `AddRange` method.
- Add `Fill` method.
- Add `Max` and `Min` methods.
- Add `PickRandom` method.
- Add `Reverse` method.
- Add `RecursiveEqual` method.
- Add `Sort` method.
- Add `Slice` and `GetSliceRange` methods.
- Add `IndexOf` overload that takes an index parameter.
- Add `LastIndexOf` method.
- Add `BinarySearch` method.
- Add/update documentation.
2023-01-30 05:41:53 +01:00
Aaron Franke
79215131b5
Replace Area gravity point distance scale with unit distance 2023-01-29 22:12:00 -06:00
Aaron Franke
866e2b95dc
Remove deprecated AREA_PARAM_GRAVITY_POINT_ATTENUATION 2023-01-29 22:12:00 -06:00
Silc Renew
d27005f80e Remove the max input limit & cleanup AnimationNodeTransition API 2023-01-30 03:52:55 +09:00
Rémi Verschelde
2abaced903
Merge pull request #72269 from Calinou/doc-update-template-feature-tag
Update name of `template` feature tag in the class reference
2023-01-29 02:24:32 +01:00
Dmitrii Maganov
31e0ae2012 GDScript: Fix constant conversions 2023-01-29 00:01:53 +02:00
Hugo Locurcio
34a35ac6ca
Update name of template feature tag in the class reference 2023-01-28 20:04:43 +01:00
Rémi Verschelde
3a25148b9b
Merge pull request #72228 from DarkKilauea/nav-agent-callable
Use Callable for Navigation Agent callbacks
2023-01-28 15:58:49 +01:00
Silc Renew
75330887d7 Implement blending audio feature to AnimationTree 2023-01-28 20:08:29 +09:00
Fabio Alessandrelli
7cd80e6a6d [Net] Remove StreamPeerTLS.blocking_handshake option.
Which was unused internally, and can be replaced by:

```
while tls.get_status() == tls.STATUS_HANDSHAKING:
  tls.poll()
```
2023-01-28 11:08:02 +01:00
Fabio Alessandrelli
adba870534 [NET] Refactor TLS configuration.
Use a TLSOptions configuration object which is created via static
functions.

- "TLSOptions.client": uses the standard CA and common name verification.
- "TLSOptions.client_unsafe": uses optional CA verification (i.e. if specified)
- "TLSOptions.server": is the standard server configuration (chain + key)

This will allow us to expand the TLS configuration options to include
e.g. mutual authentication without bloating the classes that uses
StreamPeerTLS and PacketPeerDTLS as underlying peers.
2023-01-28 11:08:02 +01:00
Fredia Huya-Kouadio
63c88df3f7 Add a theme usability setting which updates the touch area of UI elements (e.g: scrollbar) for the editor on touchscreen devices 2023-01-28 00:21:05 -08:00
Josh Jones
22f9ef19e1 Use Callable for Navigation Agent callbacks 2023-01-27 23:14:36 -08:00
Rémi Verschelde
9fceda03b4
Merge pull request #71522 from zoeesilcock/docs/more-info-on-global-menu
More info on global menu usage
2023-01-27 15:41:22 +01:00
Rémi Verschelde
f43fbb593e
Merge pull request #72148 from smix8/tileset_navigationlayers_bitmask_helpers_4.x
Add TileSet helper functions to set/get navigation layer bitmask values
2023-01-27 15:40:59 +01:00
Rémi Verschelde
525db733c8
Merge pull request #72129 from groud/unclamp_texture_origin
Rename texture_offset and unclamp it
2023-01-27 15:40:52 +01:00
Rémi Verschelde
f0e3c3f4c3
Merge pull request #72168 from RandomShaper/sensible_lock_return
Booleanize various sync primitives' wait & locking methods
2023-01-27 15:40:43 +01:00
Zoee Silcock
29ec6e7b61 Add a note about the parameter that global menu callbacks require 2023-01-27 12:41:17 +01:00
Rémi Verschelde
518b9e5801
Add missing classref changes after #62942 2023-01-27 12:07:53 +01:00
Rémi Verschelde
9d555f5c68
Merge pull request #62499 from fire/gltf-binary-img-compression
Handle gltf binary images
2023-01-27 11:35:55 +01:00
smix8
1809915bce Add TileSet helper functions to set/get navigation layer values
Adds helper functions to TileSet to set / get navigation layers bitmask values.
2023-01-27 11:23:34 +01:00
Pedro J. Estébanez
f630940591 Booleanize various sync primitives' wait & locking methods 2023-01-27 11:15:30 +01:00
Gilles Roudière
d7f3bd50bd Rename texture_offset and unclamp it 2023-01-27 11:04:45 +01:00
K. S. Ernest (iFire) Lee
39922d7167 Handle gltf binary
[ Ignore and Warn | Extract Textures (default) | Optimize Loading Embedded as Basisu ]

Enable compressed mip maps from Basis Universal for faster compressions.

Increase the quality of Basis to avoid corruption.

To keep compatibility use the first mip of the previous internal Godot format.

Because texture names may have invalid filename characters, adds String::validate_filename to sanitize filenames for import pipeline use.
2023-01-27 02:02:02 -08:00
Rémi Verschelde
22e1575021
Merge pull request #72167 from dalexeev/line-text-edit-context-menu
Fix `LineEdit` and `TextEdit` context menus not customizable
2023-01-27 10:32:34 +01:00
Rémi Verschelde
91c0ed5e33
Merge pull request #71907 from TokageItLab/change-animated-sprite-api
Make `AnimatedSprite`'s playback API consistent with `AnimationPlayer`
2023-01-27 10:32:23 +01:00
Rémi Verschelde
9b1f85fe57
Merge pull request #71845 from vonagam/fix-read-only
GDScript: Fix test for read-only state of constants
2023-01-27 10:29:52 +01:00
Danil Alexeev
af8bf6f1d0
Fix LineEdit and TextEdit context menus not customizable 2023-01-27 11:14:54 +03:00
Dmitrii Maganov
abe6d67232 GDScript: Fix test for read-only state of constants 2023-01-27 05:28:08 +02:00
Raul Santos
a968e51414
C#: Renames to follow .NET naming conventions
Renamed C# types and members to use PascalCase and follow .NET naming conventions.
2023-01-27 02:04:17 +01:00
Rémi Verschelde
3b086aa062
Merge pull request #72086 from KoBeWi/set_rekt
Don't change region_rect when setting texture
2023-01-26 23:52:19 +01:00
Rémi Verschelde
239145d9cb
Merge pull request #71946 from raulsntos/dotnet/gd
C#: Sync GD with Core
2023-01-26 23:43:36 +01:00
kobewi
b5fda06f20 Don't change region_rect when setting texture 2023-01-26 23:02:26 +01:00
Rémi Verschelde
d1277f5cba
Merge pull request #72079 from aXu-AP/arraymesh-shadow-mesh-doc
Add description for ArrayMesh.shadow_mesh class reference
2023-01-26 23:00:06 +01:00
Rémi Verschelde
91ad92657e
Merge pull request #69689 from smix8/navagent_rename_location_4.x
Rename Navigation uses of 'location' to 'position'
2023-01-26 22:57:03 +01:00
Rémi Verschelde
7cf21f296b
Merge pull request #68034 from Klowner/surfacetool-generate-normals
Make SurfaceTool.generate_normals() behave consistently with smoothing groups
2023-01-26 22:52:19 +01:00
aXu-AP
84bf7a63ba Add description for ArrayMesh.shadow_mesh
Update doc/classes/ArrayMesh.xml

Co-Authored-By: Clay John <claynjohn@gmail.com>
2023-01-26 22:48:48 +02:00
Mark Riedesel
da893c14cf Make SurfaceTool.generate_normals() behave in a consistent manner in regard to smoothing groups, imply group 0 is flat 2023-01-26 12:32:31 -06:00
Yuri Rubinsky
8c8c333bf2 Add derivative functions with precision to shaders 2023-01-26 20:53:46 +03:00
smix8
bf1571979c Rename Navigation uses of 'location' to 'position'
Contrary to the entire rest of the engine NavigationAgent's and NavigationLinks decided to deal with locations instead of positions.
2023-01-26 18:19:03 +01:00
Rémi Verschelde
44c0bfc94d
Merge pull request #71682 from TokageItLab/gdvirtual-anim-node
Make `AnimationTree` / `AnimationPlayer` processes adopt to GDVIRTUAL
2023-01-26 16:01:17 +01:00
Rémi Verschelde
296dea77fe
Merge pull request #66692 from Sauermann/fix-window-final-transform
Include the Window-transform into Viewport::get_final_transform
2023-01-26 15:59:53 +01:00
Rémi Verschelde
f8d80b406d
Merge pull request #66688 from Sauermann/fix-control-get-global-rect-coordinates
Fix Control rect coordinate system inconsistency
2023-01-26 15:59:35 +01:00
Markus Sauermann
83fa14a5a9 Include the Window-transform into Viewport::get_final_transform 2023-01-26 15:30:44 +01:00
Silc Renew
9ef2fb3cd4 Make AnimTree/Player processes adopt to GDVIRTUAL 2023-01-26 23:22:57 +09:00
bruvzg
2442f6c937
[SystemFont] Add missing MSDF properties. 2023-01-26 09:47:42 +02:00
Silc Renew
17bf6238fc Make AnimatedSprite's playback API consistent with AnimationPlayer 2023-01-26 12:40:19 +09:00
Rémi Verschelde
18a2e7ff6e
Merge pull request #72082 from Calinou/warp-mouse-silence-warning
Silence `warp_mouse()` warning in favor of documentation
2023-01-26 01:14:23 +01:00
Rémi Verschelde
42424d3b8e
Merge pull request #71758 from adamscott/is_equal_ref
Add `@GlobalScope` `is_same(a, b)` and `Variant::identity_compare()`
2023-01-26 01:07:24 +01:00
Hugo Locurcio
91e2d699b4
Silence warp_mouse() warning in favor of documentation
This warning was spammed in the Android editor when using the
navigation joysticks in the 3D viewport when the finger slid over
the viewport's edges.
2023-01-25 23:44:32 +01:00
Adam Scott
37248d7c87 Add @GlobalScope is_same(a, b) and Variant::identity_compare() 2023-01-25 10:46:21 -05:00
Danil Alexeev
b004f8180e
GDScript: Allow constant expressions in annotations 2023-01-25 18:43:56 +03:00
Rémi Verschelde
8cebd0a2ce
Merge pull request #71983 from vmedea/push-customfx
Expose RichTextLabel::push_customfx to GDScript
2023-01-25 14:41:01 +01:00
Rémi Verschelde
5743c17001
Merge pull request #71904 from Chaosus/vs_custom_nodes
Add handling of script creation/deletion for custom visual shader nodes
2023-01-25 09:20:26 +01:00
Rémi Verschelde
b9bf12e99a
Merge pull request #71142 from aaronfranke/never-duplicate-script
Add `PROPERTY_USAGE_NEVER_DUPLICATE` flag and use for script
2023-01-25 09:18:18 +01:00
Rémi Verschelde
0218b1cf6b
Merge pull request #71982 from Sauermann/fix-heightmap-docu
Fix documentation about depth and width of Height map
2023-01-25 09:17:54 +01:00
Rémi Verschelde
fd66a86d72
Merge pull request #71330 from Geometror/richtextlabel-fit-content
[RichTextLabel] Match minimum size calculation of Label (proper content fitting)
2023-01-25 09:16:38 +01:00
Aaron Franke
2a65f6812b
Add PROPERTY_USAGE_NEVER_DUPLICATE flag and use for script
Co-authored-by: Yakov Borevich <j.borevich@gmail.com>
2023-01-24 16:37:50 -06:00
Aaron Franke
2bc0bcbd26
PropertyUsage: Rename "DO_NOT_SHARE_ON_DUPLICATE" to "ALWAYS_DUPLICATE" 2023-01-24 16:05:07 -06:00
Aaron Franke
0e7785333f
Improve clarity of Tree's activated/double-clicked signals
Co-authored-by: Yuri Sizov <yuris@humnom.net>
2023-01-24 15:55:09 -06:00
clayjohn
35d91b2e54 Document some RenderingServer and RenderingDevice methods and constants
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-01-24 11:35:39 -08:00
Yuri Sizov
fab9926a95
Merge pull request #65137 from dalexeev/editor-naming
Rearrange `editor/naming/*` project settings
2023-01-24 22:26:03 +03:00
jordi
bb9a00889a Add hint for identifiers renamed since Godot 3 2023-01-24 12:33:55 -06:00
Raul Santos
47ca2f2e09
C#: Sync GD with Core
- Add overloads to print methods that take a single `string`.
- Use `StringBuilder` to append print parameters.
- Remove `PrintStack` method.
- Add `ErrorString`.
- Remove `Str` method.
- Add exception to `Range` when step is 0.
- Add `VarToBytesWithObjects` and `BytesToVarWithObjects`.
- Remove optional boolean parameter from `VarToBytes` and `BytesToVar`.
- Move `InstanceFromId` to `Godot.Object`.
- Add `Godot.Object.IsInstanceIdValid`.
- Update documentation.
2023-01-24 19:18:38 +01:00
mara
be733ea3d1 Expose RichTextLabel::push_customfx to GDScript 2023-01-24 18:16:24 +01:00
Markus Sauermann
1dce1cbe58 Fix documentation about depth and width of Height map 2023-01-24 17:56:49 +01:00
Yuri Sizov
9de0c73e45
Merge pull request #71757 from aXu-AP/animation_node_transition-improvements
Add missing property and method descriptions to AnimationNodeTransition class reference
2023-01-24 17:48:34 +03:00
aXu-AP
ad10d1a726 Add missing property and method descriptions to AnimationNodeTransition class
Co-Authored-By: Yuri Sizov <11782833+YuriSizov@users.noreply.github.com>
Co-Authored-By: Rémi Verschelde <rverschelde@gmail.com>
2023-01-24 16:07:39 +02:00
bruvzg
1c774a6083
Fix unsafe murmur3 hash use for the default material keys, expose alpha hash transparency mode for default materials and Label3D and Sprite3D. 2023-01-24 12:24:53 +02:00
Rémi Verschelde
4fa6edc888
Merge pull request #64930 from raulsntos/dotnet/docs
Update C# signal documentation and remove bind array
2023-01-24 09:55:02 +01:00
Rémi Verschelde
ffb7c6e2fc
Merge pull request #71957 from aXu-AP/remotetransform2d-doc
Fix incorrect claim in RemoteTransform2D class reference
2023-01-24 09:35:46 +01:00
aXu-AP
c1e1ce86a3 Fix incorrect claim in RemoteTransform2D class reference 2023-01-24 10:18:25 +02:00
Rémi Verschelde
514b348619
Merge pull request #71941 from aXu-AP/gpuparticles2d-doc
Add documentation for GpuParticles2D collisions
2023-01-24 09:15:01 +01:00
Rémi Verschelde
d2e8bf7089
Merge pull request #71938 from aXu-AP/curve2d-doc
Add Curve2D/tessellate_even_length description class-reference
2023-01-24 09:14:33 +01:00
aXu-AP
201335f3ec Add documentation for GpuParticles2D collisions 2023-01-23 23:16:35 +02:00
Rémi Verschelde
1dfd236f15
Merge pull request #70377 from dsnopek/server-export-mk2
Add "dedicated server" export mode which can strip unneeded visual resources
2023-01-23 22:13:28 +01:00
aXu-AP
f3e72b32ab Add Curve2D/tessellate_even_length description class-reference
Copied from Curve3D's corresponding method.
2023-01-23 22:29:15 +02:00
David Snopek
74458b6e9b Add "dedicated server" export mode which can strip unneeded visual resources 2023-01-23 13:24:54 -06:00
Jan Haller
15686ca786 Fix bind " convergence_dist" containing space 2023-01-23 20:07:59 +01:00
Hugo Locurcio
abcf0aaed2
Document changing V-Sync at runtime in the class reference 2023-01-23 19:00:22 +01:00
Rémi Verschelde
bebac4a088
Merge pull request #71830 from BastiaanOlij/xr_naming_consistancy
Rename getters and signals on XR nodes to be consistant with input types
2023-01-23 16:47:15 +01:00
Raul Santos
92e4b4e888
Update C# signal documentation and remove bind array
- Updates C# signal documentation and code examples to the new API in 4.0
- Replace all `nameof` usages with the exposed `StringName`
2023-01-23 16:45:37 +01:00
Rémi Verschelde
1f22c482e1
Merge pull request #70052 from bruvzg/key_unicode_actions
Cleanup and unify keyboard input.
2023-01-23 15:36:11 +01:00
Rémi Verschelde
11e2278844
Merge pull request #57606 from SaracenOne/update_on_reimport
Update instances of scenes which have been reimported.
2023-01-23 15:35:44 +01:00
Rémi Verschelde
0927e2cffc
Merge pull request #63251 from SaracenOne/disable_data_generation_on_foreign_resources
Disable navmesh, lightmap, and VoxelGI generation on foreign data
2023-01-23 15:35:31 +01:00
bruvzg
daad4aed62
Cleanup and unify keyboard input.
- Unify keycode values (secondary label printed on a key), remove unused hardcoded Latin-1 codes.
- Unify IME behaviour, add inline composition string display on Windows and X11.
- Add key_label (localized label printed on a key) value to the key events, and allow mapping actions to the unshifted Unicode events.
- Add support for physical keyboard (Bluetooth or Sidecar) handling on iOS.
- Add support for media key handling on macOS.

Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-01-23 15:08:12 +02:00
Yuri Rubinsky
6713e0fa5b Add handling of script creation/deletion for custom visual shader nodes 2023-01-23 15:30:17 +03:00
Rémi Verschelde
5b1df48c6c
Convert en_GB spelling to en_US with codespell 2023-01-23 11:02:20 +01:00
Rémi Verschelde
35c37ce4ce
Merge pull request #67847 from rburing/warn_non-uniformists
Warn against using non-uniform scale for 3D physics (in the editor and class reference)
2023-01-23 10:32:06 +01:00
Rémi Verschelde
5726bf578d
Merge pull request #71676 from vnen/gdscript-unicode-identifiers
Add support for Unicode identifiers in GDScript and Expression
2023-01-23 10:24:33 +01:00
Bastiaan Olij
52d4a56b3b Rename getters and signals on XR nodes to be consistant with input types 2023-01-23 11:26:12 +11:00
Rémi Verschelde
5068d82374
Merge pull request #71686 from YuriSizov/stylebox-min-size-but-better
Clean-up, harmonize, and improve StyleBox API
2023-01-22 17:53:04 +01:00
Rémi Verschelde
78d45fc51c
Merge pull request #71855 from reduz/audio-stream-polyphonic
Add AudioStreamPolyphonic to simplify sound playback from code
2023-01-22 17:51:05 +01:00
Juan Linietsky
f18d408c08 Add AudioStreamPolyphonic to make it easier to play polyphonic sound from code
* This new audio stream allows to play multiple sounds and control them over time from code.
* It greatly simplifies tasks such as generative music (music generated from code) or audio.

This new type of stream was added with the goal of fixing audio blending in AnimationPlayer and AnimationTree, but can be used by others for their regular audio needs.

Does not fix anything currently, but should help implement #69758 properly.

Some demo code of how to use this:

```GDScript

var player = $SomeNode as AudioStreamPlayer
player.stream = AudioStreamPolyphonic.new()
var playback = player.get_stream_playback() as AudioStreamPlaybackPolyphonic
var id = playback.play_stream(preload("res://Clip1.ogg"))
await get_tree().create_timer(1).timeout
playback.set_stream_volume(id,-12) # Set volume to half after one second
await get_tree().create_timer(2).timeout
var id2 = playback.play_stream(preload("res://Clip2.ogg")) # 2 seconds later, start another clip
await get_tree().create_timer(1).timeout
playback.stop_stream(id) # 1 second later, kill the first clip
playback.set_stream_pitch_scale(id2,1.5) # Make the second clip go 50% faster

```
2023-01-22 16:22:45 +01:00
Rémi Verschelde
cd031fd31a
Merge pull request #71663 from bruvzg/init_pos_x
Reorganize main and sub-window initial position properties.
2023-01-22 11:25:58 +01:00
Rémi Verschelde
c0f35a8db1
Merge pull request #71839 from TokageItLab/expose-fading-from-statemachine
Expose `fading_from` from StateMachine
2023-01-22 11:08:34 +01:00
Rémi Verschelde
bda87300e8
Merge pull request #71770 from KoBeWi/better_editing_or_something
Rework EditorPlugin editing logic
2023-01-22 11:07:39 +01:00
Silc Renew
8b04f58604 Expose fading_from_node from StateMachine 2023-01-22 15:50:53 +09:00
kobewi
4ae168eb04 Rework EditorPlugin editing logic 2023-01-22 00:20:45 +01:00
Rémi Verschelde
c781537742
Merge pull request #68489 from KoBeWi/open_in_extraterrestrial_program
Add "Open in External Program" option
2023-01-21 20:53:04 +01:00
kobewi
60ed7c5004 Add "Open in External Program" option 2023-01-21 18:33:32 +01:00
George Marques
7548e043fc
Add support for Unicode identifiers in GDScript
This is using an adapted version of UAX#31 to not rely on the ICU
database (which isn't available in builds without TextServerAdvanced).
It allows most characters used in diverse scripts but not everything.
2023-01-21 13:39:40 -03:00
Rémi Verschelde
3e9a831194
Merge pull request #65726 from KoBeWi/cellless
Don't print error in `get_cell_tile_data()`
2023-01-21 16:54:53 +01:00
Rémi Verschelde
ebd0b40f6e
Merge pull request #71687 from reduz/support-script-class-name-in-efs
Support script global resource name in EditorFileSystem
2023-01-21 16:54:23 +01:00
Rémi Verschelde
145ab2e1fd
Merge pull request #71797 from reduz/cleanup-shader-parameter-remap
Clean up shader parameter remap
2023-01-21 16:53:29 +01:00
Juan Linietsky
dddd8d43f6 Support script global resource name in EditorFileSystem
* Works for binary and text files.
* Makes EditorQuickOpen work with custom resources again.
* Information is cached and easily accessible.

Properly fixes #66179. Supersedes #66215 and supersedes #62417

**WARNING**: This required breaking backwards binary compatibility (.res and .scn files). Files saved after this PR is merged will no longer open in any earlier versions of Godot.
2023-01-21 14:19:27 +01:00
Juan Linietsky
7dbc458bb4 Clean up shader parameter remap
This PR is a follow up to #64092, which fixed important issues but it was implemented in an overly complex and inefficient way (because it forced the default code path to always go through string operations).
This cleans up all the shader parameter code.

This fixes #54336. Also fixes #56219 because, as the new code never queries the RenderingServer on load, potential deadlocks are avoided.

**NOTE**: materials saved between #62972 and #64092 will no longer work and will need to be resaved in an earlier version.
2023-01-21 12:56:28 +01:00
Rémi Verschelde
2435eef617
Merge pull request #71390 from reduz/fix-json-as-resource
Fixes to JSON as resource
2023-01-21 11:30:08 +01:00
Rémi Verschelde
d5838a06fa
Merge pull request #71709 from clayjohn/decals-lights-sorting
Sort decals and lights based on camera origin
2023-01-20 23:57:55 +01:00
clayjohn
49bebf2bfb Sort decals and lights based on camera origin
Also implement sort_offset for decals

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-01-20 09:58:17 -08:00
Rémi Verschelde
621e32971e
i18n: Sync classref translations with Weblate (3.5 branch)
(cherry picked from commit c9ae52f32e)
2023-01-20 12:32:06 +01:00
Rémi Verschelde
6d15948c68
Merge pull request #71718 from Calinou/doc-custom-mouse-cursor-max-size-web
Document image size restrictions for custom mouse cursors in HTML5
2023-01-20 12:10:18 +01:00
Yuri Rubinsky
6f2c0140f0
Merge pull request #71717 from Chaosus/vs_refactor_texture_get_code 2023-01-20 13:51:35 +03:00
Yuri Rubinsky
7cbe2b939e Some refactoring for visual shader texture functions 2023-01-20 12:54:20 +03:00
Hugo Locurcio
296b8f299a
Document image size restrictions for custom mouse cursors in HTML5 2023-01-20 10:19:36 +01:00
Rémi Verschelde
9fc40123ab
Merge pull request #71679 from kleonc/draw_polyline_line_strip
`CanvasItem::draw_polyline` Support thin polylines drawn using line strip
2023-01-20 08:48:56 +01:00
Rémi Verschelde
d919d77367
Merge pull request #71418 from TokageItLab/restart-anim-tree
Allow AnimationStateMachine / AnimationNode to restart when transitioning to the same state
2023-01-19 21:52:35 +01:00
Rémi Verschelde
a202f5104f
Merge pull request #71264 from TokageItLab/improve-statemachine
Add next/reset function to `AnimationStateMachine`
2023-01-19 21:52:05 +01:00
kleonc
728c51e362 CanvasItem::draw_polyline Support thin polylines drawn using line strip 2023-01-19 21:08:25 +01:00
Rémi Verschelde
65883cc73b
Merge pull request #71598 from bruvzg/gdscript_bidi_override
Implement BiDi override mode for GDScript source.
2023-01-19 19:33:18 +01:00
Rémi Verschelde
ab5c75b9ad
Merge pull request #71649 from raulsntos/array-indexer
Add property usage to array indexer
2023-01-19 19:33:05 +01:00
Rémi Verschelde
8b92316368
Merge pull request #71565 from RedworkDE/doc-arraymesh-add-surface
Fix LOD sort order; checks in add_surface; and document all parameters of `ArrayMesh::add_surface_from_arrays`
2023-01-19 19:32:37 +01:00
Yuri Sizov
752402cf35 Clean-up, harmonize, and improve StyleBox API
- Make all margin properties follow the same naming convention (their getter and setter too).
- Remove a virtual counterpart of `get_style_margin` from API.
- Allow to override `get_minimum_size` from scripting and remove `get_center_size`.
2023-01-19 20:02:21 +03:00
Raul Santos
97610c8bfc
Add property usage to array indexer
This makes the `Array` indexer show as returning `Variant` instead of `void` in the documentation.
2023-01-19 14:22:11 +01:00
Rémi Verschelde
d3665effd5
Merge pull request #71443 from TechnoPorg/fix-resource-conversion-plugins
Make EditorResourceConversionPlugin usable.
2023-01-19 13:23:37 +01:00
bruvzg
aade5abd4f
Reorganize main and sub-window initial position properties. 2023-01-19 13:44:06 +02:00
RedworkDE
be4eb3bbdd Fix LOD sort order; checks in add_surface; and document all parameters of ArrayMesh::add_surface_from_arrays
Also clarify some related documentation and expose the misssing `ArrayFormat::ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY`
2023-01-19 10:30:25 +01:00
Rémi Verschelde
4679f8724a
Merge pull request #71628 from reduz/fixup-editor-file-system-script-parsing
Clean up EditorFileSystem script parsing
2023-01-19 10:09:55 +01:00
clayjohn
faea9f5c10 Remove SCREEN_TEXTURE, DEPTH_TEXTURE, and NORMAL_ROUGHNESS_TEXTURE
in favour of texture hints
2023-01-18 19:52:47 -08:00
Rémi Verschelde
acd62443b6
Merge pull request #71619 from TokageItLab/add-keep-state-to-anim-stop
Add `p_keep_state` to `AnimationPlayer::stop()`
2023-01-18 22:41:43 +01:00
Rémi Verschelde
5dd3a6dbe2
Merge pull request #71638 from raulsntos/dotnet/export-plugin
C#: Implement `ExportPlugin::_get_name` and move `GLOBAL_DEF` to CSharpLanguage
2023-01-18 22:29:37 +01:00
Rémi Verschelde
2050f59e3a
Merge pull request #71623 from kleonc/draw_arc_clamp_to_single_circle
`CanvasItem::draw_arc` Clamp angle difference so arc won't overlap itself
2023-01-18 22:28:24 +01:00
Rémi Verschelde
f40f1e0c90
Merge pull request #60904 from KoBeWi/👻👻👻
Allow unindent without selection
2023-01-18 22:27:36 +01:00
Raul Santos
3425d43fed
C#: Move GLOBAL_DEFs to CSharpLanguage ctor
Also documents the .NET project settings.
2023-01-18 21:53:58 +01:00
Juan Linietsky
5bdc0d97d3 Clean up EditorFileSystem script parsing
* Optimize only update modified/added/removed files.
* Clean up documentation parsing.
2023-01-18 20:56:45 +01:00
Silc Renew
e480262c53 Allow AnimationNodes to restart when transitioning to the same state 2023-01-19 03:10:59 +09:00
Silc Renew
8bfaf098c7 Add next/reset function to AnimationStateMachine 2023-01-19 03:10:45 +09:00
bruvzg
5361ec9f43
Implement BiDi override mode for GDScript source. 2023-01-18 19:22:20 +02:00
Rémi Verschelde
955f05a4fa
Merge pull request #71473 from TigranExe/patch-2
Added property descriptions to and clarified description of SkeletonProfile
2023-01-18 17:34:13 +01:00
Rémi Verschelde
da1b78222c
Merge pull request #71615 from groud/bring_back_get_cells_by_id
Bring back TileMap::get_cells_by_id
2023-01-18 17:33:14 +01:00
Silc Renew
d16004f297 Add p_keep_state to AnimationPlayer::stop() 2023-01-19 01:05:46 +09:00
kobewi
b427d3585c Allow unindent without selection 2023-01-18 17:05:15 +01:00
Gilles Roudière
68afc0afa5 Bring back TileMap::get_cells_by_id 2023-01-18 15:56:31 +01:00
Tigran
20a23cd8cb Updated SkeletonProfile's main and property descriptions
Updated SkeletonProfile's main and property descriptions
-Description now has note about read only quality
-"bone_size" and "group_size" property descriptions have been added and clarified.
-Property descriptions refer to BoneMap page instead of [code]bone_map[/code] from [Retargeting 3d skeletons](https://docs.godotengine.org/en/latest/tutorials/assets_pipeline/retargeting_3d_skeletons.html#bone-map).
-all property descriptions now do not have any Notes to split them
-TokageItLab clarifies property descriptions to highlight their use

Co-Authored-By: Silc 'Tokage' Renew <tokage.it.lab@gmail.com>
2023-01-18 09:23:04 -05:00
kleonc
43fc483e6c CanvasItem::draw_arc Clamp angle difference so arc won't overlap itself 2023-01-18 15:16:22 +01:00
Rémi Verschelde
0461f75387
Merge pull request #71527 from matt08-prog/patch-1
add RichTextLabel::push_font_size description
2023-01-18 08:38:14 +01:00
Rémi Verschelde
6da836bbb4
Merge pull request #71514 from akien-mga/os-unset_environment
OS: Add `unset_environment`, better validate input
2023-01-18 08:35:43 +01:00
RedMser
ec4f9f5e2d Fix documentation 2d/3d mixups 2023-01-17 21:34:10 +01:00
RedMser
dc70ab5e2d Document internal usage of encode/decode_variant 2023-01-17 18:42:26 +01:00
Rémi Verschelde
19152765de
Merge pull request #71145 from dalexeev/doc-sprite-frames
Improve `SpriteFrames` docs
2023-01-17 11:13:49 +01:00
SaracenOne
4628736894 Update instances of scenes which have been reimported. 2023-01-16 13:46:33 -08:00
matt08-prog
44c27802b2
add RichTextLabel::push_font_size description
Is it worth adding descriptions for the ItemType enum values (ITEM_FRAME , ITEM_TEXT etc.) or are they self explanatory enough?
2023-01-16 14:15:41 -07:00
Michael Alexsander
c03e474d11 Make DisplayServer docs tell users to change some window values in the Window node 2023-01-16 13:52:36 -03:00
Rémi Verschelde
818a9e99a4
OS: Add unset_environment, better validate input
Instead of returning an undocumented boolean error code, we do the
validation checks that should ensure a successful result.

Based on:
- https://linux.die.net/man/3/setenv
- https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-setenvironmentvariable
2023-01-16 16:39:44 +01:00
bruvzg
c6ed9bb77e
Fix typo and add missing docs for WINDOW_FLAG_MOUSE_PASSTHROUGH. 2023-01-16 14:25:32 +02:00
Rémi Verschelde
5ca6c1f9db
Merge pull request #70557 from KoBeWi/class_yeet
Move global script class cache to separate file
2023-01-16 12:49:08 +01:00
Rémi Verschelde
47689c7d51
Merge pull request #71502 from bruvzg/tooltip_clickthrough
Add `WINDOW_FLAG_MOUSE_PASSTHROUGH` flag and enabled it for tooltips.
2023-01-16 12:48:45 +01:00
Danil Alexeev
a8cbb6245b
Fix scaling issue in draw_line and similar methods 2023-01-16 12:49:58 +03:00
bruvzg
34b34b104c
Add WINDOW_FLAG_MOUSE_PASSTHROUGH flag and enabled it for tooltips. Expose window_set_mouse_passthrough to Window. 2023-01-16 11:42:49 +02:00
kobewi
6444c7d127 Move global script class cache to separate file 2023-01-16 10:16:30 +01:00
Rémi Verschelde
0f0b853c98
Merge pull request #70668 from KoBeWi/never_give_up
Retry loading addons after filesystem scan
2023-01-16 09:47:17 +01:00
Rémi Verschelde
b45bd946c6
Merge pull request #70669 from KoBeWi/bruh2
Improve ResourcePreloader description
2023-01-16 09:46:52 +01:00
Rémi Verschelde
0b5743327c
Merge pull request #71436 from TigranExe/patch-1
Added a brief description to SkeletonProfileHumanoid
2023-01-16 09:41:59 +01:00
Rémi Verschelde
f96701eda6
Merge pull request #71461 from snoopdouglas/snoopdouglas/master
Class reference: snake_case .tscn & .gd filenames, _on_* callbacks
2023-01-16 09:41:36 +01:00
Rémi Verschelde
da57e0059e
Merge pull request #70504 from KoBeWi/the_choosen_antipattern
Add EditorUndoRedoManager singleton
2023-01-16 09:24:50 +01:00
TigranExe
d50868e688
doc: Add a brief description to SkeletonProfileHumanoid 2023-01-16 09:21:07 +01:00
Rémi Verschelde
88c81bfbe5
Merge pull request #71456 from raulsntos/dotnet/sync-plane
C#: Sync `Plane` with Core
2023-01-16 09:20:30 +01:00
Rémi Verschelde
94312ab943
Merge pull request #71445 from raulsntos/dotnet/transforms
C#: Add missing `Transform{2D,3D}` and `Basis` constructors
2023-01-16 09:20:07 +01:00
Rémi Verschelde
1580081268
Merge pull request #71474 from raulsntos/plane_get_center
Rename `center` method to `get_center` in Plane.
2023-01-16 09:16:40 +01:00
Rémi Verschelde
ce278b1b7a
Merge pull request #70433 from Sauermann/fix-treeitem-id
Fix confusion about TreeItem.add_button ambiguity between id and index
2023-01-16 09:15:15 +01:00
kobewi
b58111588a Add EditorUndoRedoManager singleton 2023-01-16 01:11:52 +01:00
Raul Santos
7a19c87c7e
C#: Sync Plane with Core
- Add `Plane(Vector3)` constructor.
- Rename `IntersectRay` to `IntersectsRay`.
- Rename `IntersectSegment` to `IntersectsSegment`.
- Replace `Center` property with `GetCenter` method.
- Add and fix documentation about the _normal_ parameter
to Core and C# documentation.
2023-01-15 19:47:42 +01:00
Raul Santos
7560340ef6
Rename center method to get_center in Plane. 2023-01-15 17:18:50 +01:00