Commit Graph

3127 Commits

Author SHA1 Message Date
Rémi Verschelde
a4bbc87acc
Merge pull request #59900 from timothyqiu/remove-theme-type
[3.x] Add an explicit way to remove a theme type
2022-04-05 08:29:17 +02:00
Haoyu Qiu
f6251724af Add an explicit way to remove a theme type
Co-Authored-by: Yuri Sizov <yuris@humnom.net>
2022-04-05 11:51:15 +08:00
Haoyu Qiu
bba6d18973 Add missing period in classref of 3D render layer 2022-04-05 09:43:38 +08:00
ConteZero
5e714051ea [3.x] Add deselect() to RichTextLabel 2022-04-04 22:46:13 +02:00
Rémi Verschelde
bac58e898e
Merge pull request #59713 from Calinou/doc-canvasitem-top-level-3.x 2022-03-31 23:19:10 +02:00
Hugo Locurcio
4e6dfac969
Improve documentation related to 3D material vertex lighting 2022-03-31 18:11:18 +02:00
Hugo Locurcio
196c4fff13
Clarify what set_as_toplevel() does in CanvasItem 2022-03-31 02:07:16 +02:00
Rémi Verschelde
81eda4eee0 doc: Fix String.rsplit code example
Fixes #36898.
Supersedes and closes #36951.

(cherry picked from commit e7fd0ec31f)
2022-03-28 23:51:32 +02:00
Haoyu Qiu
98069fa6f1 Document how to specify explicit value for PROPERTY_HINT_ENUM names
(cherry picked from commit 405bc96a1e)
2022-03-28 23:49:06 +02:00
Haoyu Qiu
f062e967f5 Mention default output node name for AnimationNodeBlendTree
(cherry picked from commit 6bf01e0567)
2022-03-28 23:45:23 +02:00
bruvzg
fd2fba7c2c
Add binary MO translation file support. Add brotli decoder and WOFF2 support.
Use smaller .mo files instead of .po, if gettext is available.
Convert editor fonts to .woff2 format.
2022-03-25 19:51:39 +02:00
Hugo Locurcio
292ad704e6
Increase the maximum number of concurrent DNS queries from 32 to 256
This makes the following error message less likely to be printed
when performing many concurrent HTTP requests:

    Condition ' resolving == IP::RESOLVER_INVALID_ID ' is true. returned: ERR_BUG
2022-03-25 17:13:51 +01:00
Rémi Verschelde
788abafb77
Merge pull request #57673 from Calinou/doc-bakedlightmap-atlas-size
Document BakedLightmap atlas generation only being compatible with GLES3
2022-03-22 20:12:31 +01:00
Hugo Locurcio
ff8e0519a8
Document BakedLightmap atlas generation only being compatible with GLES3 2022-03-22 17:36:15 +01:00
zacryol
3fe37f9635 update _init() description
Specify details regarding required parameters.

(cherry picked from commit 21fc3cbe81)
2022-03-22 10:29:25 +01:00
Hugo Locurcio
0e25cd0788 Mention that Node's owner must be set for persistence to work
This is already done in `Node.add_child()` documentation, but
this copies the note in `Node.owner` for good measure.

(cherry picked from commit be1acf3b92)
2022-03-22 08:55:07 +01:00
Jason Knight
09e4672f0d Bind NOTIFICATION_LOCAL_TRANFORM_CHANGED 2022-03-20 11:34:29 -06:00
Rémi Verschelde
9e44fb166d
Merge pull request #59344 from madmiraal/fix-57943-3.x
[3.x] Ensure minimum modifiers are pressed when matching actions
2022-03-20 11:27:20 +01:00
Marcel Admiraal
88c723c33c Ensure minimum modifiers are pressed when matching actions 2022-03-20 08:08:40 +00:00
Rémi Verschelde
cec7fc4ffe
Merge pull request #58479 from ChronicallySerious/use-time-in-vcs
Use Time singleton in VersionControlEditorPlugin
2022-03-18 20:34:56 +01:00
ChronicallySerious
9e978bf989 Use Time singleton in VersionControlEditorPlugin
Instead of displaying the exact string, now Godot uses the Time
singleton to calculate the date string from the UTC Unix timestamp and
also uses Time's timezone offset conversion to string function
2022-03-19 00:50:37 +05:30
Ricardo Buring
812d45ea7c Document that PhysicsServer's get_process_info is implemented only for Godot Physics 2022-03-18 20:01:45 +01:00
Rémi Verschelde
6a524b2cc0
Merge pull request #57661 from lawnjelly/bind_mesh_merging 2022-03-17 19:54:31 +01:00
taigi100
e49d8f8b4c Update color constants to use HEX codes
(cherry picked from commit bd247fa315)
2022-03-17 15:49:58 +01:00
Haoyu Qiu
d537a88299 Add item tooltip access to OptionButton
(cherry picked from commit a635ecf6d4)
2022-03-17 14:45:19 +01:00
Hugo Locurcio
1a300503c6 Document Range's value_changed signal is also emitted with code changes
This also mentions that the signal is potentially emitted every frame,
which can have performance implications.

(cherry picked from commit cdbb31adc9)
2022-03-17 14:45:19 +01:00
Hugo Locurcio
b087538119
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-03-16 23:01:02 +01:00
Marcel Admiraal
d2c0ee700a Update documentation for Control rect_pivot_offset to include rotation 2022-03-15 10:28:45 +00:00
Rémi Verschelde
ee818e1631
Merge pull request #54026 from ConteZero/primary_clipboard_linux_3.x 2022-03-14 18:52:20 +01:00
ConteZero
2ff0735329 Added primary clipboard for Linux 2022-03-14 15:28:36 +01:00
Rémi Verschelde
fdaf0de3f0
Merge pull request #59100 from RandomShaper/mouse_drop_on_disable_3.x 2022-03-14 11:25:12 +01:00
Pedro J. Estébanez
3d7821bf1f Drop mouse focus and over when gui input is globally disabled
Since some porjects may be relying on the former behavior, this is opt-in via a new project setting, disabled by default, but enabled for new projects, since it's the new standard behavior (and the only one in 4.0).
2022-03-14 11:06:26 +01:00
ConteZero
0ffacff998 [3.x] Add option to make selection unique 2022-03-14 09:48:09 +01:00
Rémi Verschelde
08c3e00b95
Merge pull request #55355 from ConteZero/drag_and_drop_3.x 2022-03-14 08:43:22 +01:00
ConteZero
4167e98088 Add drag and drop to TextEdit, LineEdit, RichTextLabel 2022-03-14 08:15:25 +01:00
Hugo Locurcio
caf2c20655 Don't store and show current file/directory/path FileDialog properties
These properties are only useful at run-time, so they don't need
to be displayed in the editor and stored.

(cherry picked from commit 2ad6e11b78)
2022-03-13 15:46:01 +01:00
Rémi Verschelde
3eee2f45a3
Merge pull request #57674 from RandomShaper/fix_ubershader_android
Improve ubershader compatibility
2022-03-13 00:53:48 +01:00
Hugo Locurcio
c731cda3d8 Clarify the position of points in Curve{2D,3D}.add_point()
(cherry picked from commit 35c8d332b5)
2022-03-12 15:10:28 +01:00
Aaron Franke
3040285b27 Add offset string from minutes conversion method to Time singleton
(cherry picked from commit 55aabb8b06)
2022-03-12 14:44:23 +01:00
Rémi Verschelde
f6895fbb46
Merge pull request #59034 from lawnjelly/docs_background_keep 2022-03-12 14:28:00 +01:00
Rémi Verschelde
eb36566c34
Merge pull request #58812 from Calinou/os-add-get-screen-refresh-rate-3.x
Add `get_screen_refresh_rate()` to OS
2022-03-11 17:31:20 +01:00
lawnjelly
bc924d4b41 Correct docs for Environment background keep mode
The docs incorrectly stated that KEEP was the fastest mode. This is not the case with modern hardware.
2022-03-11 15:44:40 +00:00
Markus Sauermann
2cafaf3adb Fix documentation about depth and width of Height map 2022-03-11 01:03:07 +01:00
Hugo Locurcio
cec7c908ca
Add get_screen_refresh_rate() to OS
This method can be used to get the refresh rate of a given screen.
It is supported on Windows, macOS, Linux, Android and iOS (but not
HTML5).
2022-03-10 22:10:48 +01:00
Rémi Verschelde
1cf444aff0
Merge pull request #58686 from vnen/gdscript-warn-export-type-mismatch 2022-03-10 21:12:05 +01:00
Rémi Verschelde
1639b3a6a9
Merge pull request #58674 from Calinou/smooth-trimesh-collision-always-setting-3.x 2022-03-10 21:11:44 +01:00
Haoyu Qiu
94a5f9edb0 Fix capitalization of boolean output in classref 2022-03-09 21:56:55 +08:00
Wilson E. Alvarez
c37be0f31b
Expose TextEdit get_visible_rows() and get_total_visible_rows() to GDScript 2022-03-08 22:32:22 -05:00
Rémi Verschelde
85b4848ca8
Merge pull request #54188 from Rubonnek/increase_var_arg_max_3x 2022-03-08 13:10:48 +01:00
Wilson E. Alvarez
424dbf70af
Increase VARIANT_ARG_MAX to 8 2022-03-07 10:03:49 -05:00
Hugo Locurcio
413689559c
Always register the Smooth Trimesh Collision project setting
This ensures the project setting never disappears from the editor,
even if the current physics engine is GodotPhysics.

This also adds documentation for the Smooth Trimesh Collision
project setting.
2022-03-02 18:50:21 +01:00
George Marques
f2166ba92f
GDScript: Don't coerce default values to the export hint type
This behavior is inconsistent with non tools builds and can create
issues. Instead, a warning is emitted if there's a type mismatch. If the
type can't be converted, an error is shown instead.

For the editor it gives a converted value to avoid issues with the
property editor, which expects the correct type.
2022-03-02 12:26:17 -03:00
Nova
c4041ca8c0 Added or improved documentation to a few more String methods
(cherry picked from commit f159e7e5ab)
2022-03-02 11:00:26 +01:00
Markus Sauermann
54eac2aba5 Update doc for match: empty argument doesn't match anything
(cherry picked from commit 70ae6c21de)
2022-03-02 11:00:26 +01:00
skyace65
310adf533d Add more information on triangulate polygon
(cherry picked from commit bcc4d26c48)
2022-02-24 10:33:52 +01:00
Hugo Locurcio
595d67ae8b
Document glow rendering caveats when using GLES3 on mobile 2022-02-23 17:47:16 +01:00
lawnjelly
b90f1a3ec0 Disable jitter fix when physics interpolation is enabled. 2022-02-21 10:32:42 +00:00
Hugo Locurcio
cfba65fa23 Expose AudioServer.capture_device as a property
This is more consistent with `AudioServer.device` (for output),
which is already exposed as a property.

(cherry picked from commit 1d35b37499)
2022-02-19 15:57:36 +01:00
Haoyu Qiu
f61ce6ee89 Fix wording in AnimationNode classref
(cherry picked from commit bc37b0508b)
2022-02-19 15:45:43 +01:00
Hugo Locurcio
def35898e4
Document that meshes and lights must be fully set up before baking GIProbe 2022-02-18 21:42:06 +01:00
Yuri Sizov
df13466139 Add type variations to Theme 2022-02-17 15:24:10 +03:00
Rémi Verschelde
47e34dc4e2
Merge pull request #58157 from Calinou/os-add-get-processor-name-3.x 2022-02-17 12:34:16 +01:00
Hugo Locurcio
ac0d37dcef
Add a property hint for the Line2D Round Precision property
This prevents choosing extremely high values which cause performance
issues for no visual benefit.

(cherry picked from commit 6b52aa67b8)
2022-02-17 09:59:28 +01:00
Haoyu Qiu
c9f9e06775
Fix documentation about TreeItem button ID
(cherry picked from commit bb766a8fb6)
2022-02-17 09:59:28 +01:00
Wagner Scholl Lemos
2ed43f940b
Added show and hide methods and updated doc API.
(cherry picked from commit 160ee4ef8e)
2022-02-17 09:52:47 +01:00
Rémi Verschelde
125e419f61
Merge pull request #35316 from Calinou/contact-shadows-hide-from-editor
Document Light contact shadows often looking broken
2022-02-17 07:37:45 +01:00
Haoyu Qiu
8f14941ffd Fix mismatched BBCode tags in classref 2022-02-17 10:19:28 +08:00
Hugo Locurcio
9171737e2b
Document Light contact shadows often looking broken 2022-02-17 02:04:07 +01:00
Hugo Locurcio
7f9e974a8b
Add an OS.get_processor_name() method
This method can be used to get the CPU model name.
It can be used in conjunction with
`VisualServer.get_video_adapter_name()` and
`VisualServer.get_video_adapter_vendor()` for annotating benchmarks
and automatic graphics quality configuration.
2022-02-16 18:39:02 +01:00
Haoyu Qiu
0e9a9a7ee2 Fix description of OccluderShapePolygon.two_way 2022-02-17 01:21:32 +08:00
Rémi Verschelde
2dd545b512
Merge pull request #58141 from lawnjelly/occluder_shared_resources 2022-02-16 13:29:55 +01:00
lawnjelly
3c2df49832 Fix Occluder to properly share resources
In order to properly support the resource sharing paradigm, Occluders are split into Instances and Resources in the VisualServer. Instances are owned by a Scenario, and Resources are global. OccluderShape resources can now correctly be shared by multiple OccluderInstances.
2022-02-16 09:55:11 +00:00
lawnjelly
522bce1159 Fixed Timestep Interpolation (3D)
Adds fixed timestep interpolation to the visual server.
Switchable on and off with project setting.

This version does not add new API for set_transform etc, when nodes have the interpolated flag set they will always use interpolation.
2022-02-16 09:41:23 +00:00
Hugo Locurcio
7dcb25e37b
Improve documentation for AudioServer device properties and methods
(cherry picked from commit 743b5608e3)
2022-02-15 12:30:58 +01:00
Hugo Locurcio
5ca3a360d1
Clarify identical hash() return values due to collisions
(cherry picked from commit 08541fe11d)
2022-02-15 12:27:57 +01:00
Hugo Locurcio
08128351a5
Clamp environment light sky contribution to the [0.0; 1.0] range
The value is already clamped in the editor, but it wasn't being
clamped when the value was set via code. Values outside the [0.0; 1.0]
range can result in broken rendering.
2022-02-14 17:15:06 +01:00
Hugo Locurcio
53b96095eb
Improve completion scroll bar visibility in the script editor (3.x)
This makes the scroll bar bar thicker and more opaque (roughly
matching the editor theme's scroll bar by default).
2022-02-14 14:54:35 +01:00
Hugo Locurcio
f1d289f6eb
Improve the AudioStreamPlayer2D/3D.area_mask documentation
The documentation was stating that the area mask affects where sounds
can be heard, which is not true. Instead, the area mask affects audio
bus redirection.

Thanks to Azedaxen on the Godot forums for providing this description :)

(cherry picked from commit ab1eaac315)
2022-02-11 09:51:50 +01:00
Rémi Verschelde
7a16bb2ee4
Fix typos with codespell
Using codespell 2.2-dev from current git.

Added `misc/scripts/codespell.sh` to make it easier to run it once in a
while and update the skip and ignore lists.

(cherry picked from commit 1bdb82c64e)
2022-02-11 09:50:59 +01:00
reduz
e4e3f7d157
Add a signal to notify when children nodes enter or exit tree
-Allows more fine grained notifications (hence better performance) than using the global scene tree signals (node added and removed).
-Required for #55950

(cherry picked from commit fbd9599b04)
2022-02-11 09:50:58 +01:00
TechnicalSoup
49059e3f26
Expand description for warp_mouse_position method
Add more detail to the description for the warp_mouse_position method, clarifying that the vector is in screen coordinates and relative to an origin at the top of the game window.

(cherry picked from commit 3dc1fad262)
2022-02-11 09:50:57 +01:00
Max Hilbrunner
12841d536f
DOCS: Object.set() does nothing on type mismatch
(cherry picked from commit bb7d003881)
2022-02-11 09:50:06 +01:00
Haoyu Qiu
8231303dec Backport FlowContainer 2022-02-11 14:48:40 +08:00
Haoyu Qiu
f49ffe4bb0 Backport CanvasLayer visibility 2022-02-11 01:00:35 +08:00
Rémi Verschelde
0c7c640112
Merge pull request #57643 from YeldhamDev/smarter_pm_focus_port 2022-02-10 16:52:08 +01:00
lawnjelly
f0af29346b ProjectSettings add dirty flag and project_settings_changed signal
Most frames there will be no change in project settings, and it makes no sense to read settings every frame in case of changes, as a large number of string compares are involved.

This PR adds a signal to ProjectSettings that can be subscribed to in order to keep local settings up to date with ProjectSettings.

In addition a function `ProjectSettings::has_changes()` is provided for objects outside the signal system (e.g. Rasterizers).
2022-02-09 11:20:25 +00:00
Haoyu Qiu
a3f6033513 Improve TreeItem button API 2022-02-08 23:56:19 +08:00
Raul Santos
1d3de163dc Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Co-authored-by: jitspoe <jitspoe@yahoo.com>
2022-02-07 21:29:37 +01:00
Fabio Alessandrelli
4c23a902c1 [HTML5] Implement JavaScript PWA update callbacks.
Allows detecting when a new version of the progressive web app service
worker is waiting (i.e. an update is pending), along a function to force
the update and reload all clients.
2022-02-06 18:33:13 +01:00
Marcel Admiraal
a4f0e02798 Update definitions of get_mouse_position methods 2022-02-06 09:32:46 +00:00
Pedro J. Estébanez
0d1ec9a7cf Improve ubershader compatibility
- Prevent debug enforced use of ubershader on shaders not supporting it
- Use unsigned integer for ubershader flags
- Add project setting for disabling async shader compilation on mobile
- Stop sampling some textures through different kinds of samplers at the same time
2022-02-05 22:12:31 +01:00
lawnjelly
cf1b3fdd55 Bind mesh merging functionality in MeshInstance
The portal system introduced basic mesh merging functionality, this has wide ranging uses outside of the portal system.
For this reason, this PR binds the mesh merging functionality.
It also slightly modifies the calling from RoomManager to use a Vector of Node *, in order to allow binding of the function.
2022-02-05 13:18:17 +00:00
Rémi Verschelde
689f59dca0
Merge pull request #53463 from lawnjelly/vital_redraws
Add editor vital redraws only option
2022-02-04 21:42:49 +01:00
Michael Alexsander
f63bea9ef2 Make popup menus focus items automatically when not using the mouse 2022-02-04 17:20:26 -03:00
lawnjelly
10eb9564ca Portals - Improve mesh merging
Some improvements to robustness to account for more properties.
Addition of an "allow merging" flag in the cull instance.
2022-02-04 08:40:46 +00:00
Rémi Verschelde
176de98dd6
Merge pull request #57576 from timothyqiu/doc-stream-peer-buffer-3.x 2022-02-03 09:59:20 +01:00
Haoyu Qiu
9150fe5c9a Add documentation for StreamPeerBuffer 2022-02-03 16:01:28 +08:00
Pawel Lampe
6c6e50bf0c Fix navigation merge errors, fixes #56786
- improved `detail/sample_max_error` default value
- improved floating point precision handling in cell key calculations
- improved `merge error` error message
- exposed `cell_height` of `nav_map` to the `Navigation`
- fixed cell key `y` calculation
2022-02-02 23:52:29 +01:00
Rémi Verschelde
78f230885b
Merge pull request #57475 from snailrhymer/look-at-update 2022-02-02 23:07:20 +01:00
lawnjelly
a0c6d16c90 Add editor vital redraws only option
When editor continuous redraws is switched off, the editor only redraws when a redraw_request was issued by an element in the scene. This works well in most situations, but when scenes have dynamic content they will continuously issue redraw_requests.

This can be fine on high power desktops but can be an annoyance on lower power machines.

This PR splits redraw requests into high and low priority requests, defaulting to high priority. Requests due to e.g. shaders using TIME are assigned low priority.

An extra editor setting is used to record the user preference and an extra option is added to the editor spinner menu, to allow the user to select between 3 modes:

* Continuous
* Update all changes
* Update vital changes
2022-02-02 11:26:45 +00:00