Commit Graph

2336 Commits

Author SHA1 Message Date
Hugo Locurcio 6c6f4e9895
Expose a `File.flush()` method to scripting
This can be used to ensure a file has its contents saved
even if the project crashes or is killed by the user
(among other use cases).

See discussion in #29075.

(cherry picked from commit ab397460e9)
2021-02-16 14:27:38 +01:00
Hugo Locurcio 15d9f77f97
Add a project setting to enable stdout flushing in release builds
This can be used in server builds for journalctl compatibility.

(cherry picked from commit 341b9cf15a)

Fixes crash when exiting with --verbose with leaked resources

(cherry picked from commit 25c4dacb88)
2021-02-16 14:27:38 +01:00
JFonS 56bf256d76 Add options to reduce lightmaps disk usage.
Added BakedLightmap.use_hdr and BakedLightmap.use_color properties
that can reduce the flie size of lightmap texture at the expense of quality.

Changed the denoiser to work in a single buffer, reducing RAM
usage. Also added the `-mstackrealign` flag in the denoiser compilation
for MinGW builds. This flag helped fix a bug in Embree, so I want to see
if it will help fix GH #45296.
2021-02-16 13:20:27 +01:00
Emily 92dd573053
fixed typo in packedscene
(cherry picked from commit 7368bc534a)
2021-02-12 11:11:35 +01:00
Kongfa Waroros adb93d7120
Update GraphEdit when GraphNode's slot is updated
(cherry picked from commit fe6c8d48e6)
2021-02-11 13:14:33 +01:00
Ryan Roden-Corrent 08d556f677
Clarify EditorImportPlugin.get_visible_name.
According to the docs at
https://docs.godotengine.org/en/stable/tutorials/plugins/editor/import_plugins.html#the-editorimportplugin-class

> The get_visible_name() method is responsible for returning the name of
> the type it imports and it will be shown to the user in the Import dock.
> You should choose this name as a continuation to "Import as", e.g.
> "Import as Silly Material"

I've verified Godot's behavior reflects this, so the code examples
should reflect this.

Also document propagating save error in EditorImportPlugin.

It seems that the suggested code ignores any error from
`ResourceSaver.save`, but I think we should return it.

(cherry picked from commit 9676650f2f)
2021-02-11 13:12:06 +01:00
Rémi Verschelde f55c23d8f2
Merge pull request #44476 from Calinou/doc-object-new-bug
Document known bug with `Object.new()` and workaround
2021-02-11 12:26:25 +01:00
Rémi Verschelde 5e7df2da08
Merge pull request #45876 from Calinou/doc-particles2d-no-atlas
Document Particles2D not supporting AtlasTexture region
2021-02-10 19:47:42 +01:00
Hugo Locurcio 97b43e816b Document Particles2D not supporting AtlasTexture region
See #13923.
2021-02-10 18:09:51 +01:00
Aaron Franke f201382a85
[3.2] Use instance and first arg in Basis is_equal_approx
Discards the second argument.
2021-02-09 05:09:51 -05:00
Rémi Verschelde 398a625a9f
Merge pull request #39421 from RandomShaper/pause_aware_picking_3.2
Implement pause-aware picking (3.2)
2021-02-09 10:43:48 +01:00
Hugo Locurcio 2261e738c2
Improve the `SurfaceTool.generate_normals()` documentation
(cherry picked from commit b8df8b1043)
2021-02-08 22:36:36 +01:00
Pedro J. Estébanez 745c711289 Implement pause-aware picking
This adds a new project setting (`physics/common/enable_pause_aware_picking`). It's disabled by default.

When enabled, it changes the way 2D & 3D physics picking behaves in relation to pause:
- When pause is set, every collision object that is hovered or captured (3D only) is released from that condition, getting the relevant mouse-exit callback., unless its pause mode makes it immune from pause.
- During the pause. picking only considers collision objects immune from pause, sending input events and enter/exit callbacks to them as expected.
- When pause is left, nothing happens. This is a big difference with the classic behavior, which at this point would process all the input events that have been queued against the current state of the 2D/3D world (in other words, checking them against the current position of the objects instead of those at the time of the events).
2021-02-08 20:48:13 +01:00
Marcel Admiraal 3dd57a22df Add support for new SDL gamecontroller keywords. 2021-02-07 16:41:23 +00:00
Hugo Locurcio 898327b312
Document known bug with `Object.new()` and workaround 2021-02-07 16:15:24 +01:00
Hugo Locurcio ee89da129f Improve the `File.endian_swap` documentation
(cherry picked from commit c5f0db45df)
2021-02-05 09:26:09 +01:00
James Westman 7ce1789597
docs: Add TreeItem method descriptions
(cherry picked from commit 2f5164d78c)
2021-02-02 13:02:46 +01:00
Hugo Locurcio 38a94ce2bc
Reference the control gallery image in the Control class documentation
Like the Tween cheatsheet or Color constants cheatsheet, this references
a "cheatsheet" image from the documentation repository.

(cherry picked from commit 200f1cf015)
2021-02-02 13:02:46 +01:00
kleonc 995388cf6f
Docs: Fix TileMap::map_to_world description
(cherry picked from commit e62ec6c6b1)
2021-02-02 13:02:46 +01:00
HaSa1002 4ff0df702d Expose bookmark, breakpoint, and mark safe functions in TextEdit 2021-01-27 22:41:07 +01:00
Hugo Locurcio eb0ca31ac1
Add an `OS.get_thread_caller_id()` method
This can be used to print thread IDs in logs. This can make it easier
to debug multi-threaded applications.

Co-authored-by: Khaos <khaos@khaos-coders.org>
(cherry picked from commit 35b046ddf7)
2021-01-26 22:10:30 +01:00
Hugo Locurcio 1c9ee4baa2
Improve the `Array.hash()` documentation
Co-authored-by: Laguzus <67963093+Laguzus@users.noreply.github.com>
(cherry picked from commit 435848192e)
2021-01-26 22:10:30 +01:00
Andrii Doroshenko (Xrayez) 0ff0fdef5c
Document shape metadata for `TileMap`
(cherry picked from commit 0c2dbd01dc)
2021-01-26 17:24:39 +01:00
Hugo Locurcio 9a3c5033f7
Document the expected low performance of VideoPlayer on HTML5
(cherry picked from commit b98540dd9d)
2021-01-26 17:00:17 +01:00
Hugo Locurcio e2a2005a48
Document low performance of `Array.push_front()` and `Array.pop_front()`
(cherry picked from commit 7ce3cc0478)
2021-01-26 17:00:16 +01:00
Hugo Locurcio af891cebe4
Document that the high-level multiplayer API is only for Godot servers
(cherry picked from commit 1b03f3f72b)
2021-01-26 17:00:16 +01:00
Nils Reid 349f25429b
Exposed find_next_valid_focus and find_prev_valid_focus.
(cherry picked from commit 3e94c23fa5)
2021-01-26 17:00:16 +01:00
Hugo Locurcio 22bb9fcd82
Document a built-in use of `Resource.resource_name`
(cherry picked from commit 1a606b1a04)
2021-01-26 17:00:16 +01:00
Ryan Roden-Corrent c31bb02a3e
Clarify that create_timer does not require cleanup.
This is how I would expect it to work, but the docs didn't clarify, so I
had to check the source just to make sure I wasn't responsible for
freeing the timer:

d39f6386ce/scene/main/scene_tree.cpp (L473)
(cherry picked from commit 6e7e4f82ec)
2021-01-26 17:00:16 +01:00
Andrii Doroshenko (Xrayez) ee73e4aa24
Document GPU particles visibility rect/aabb behavior
(cherry picked from commit b4675973fd)
2021-01-26 17:00:15 +01:00
Hugo Locurcio 86ca5ff5f0
Document that ShaderMaterial doesn't support GIProbe emission 2021-01-25 18:19:10 +01:00
Hugo Locurcio 9dbdec7e33
Document workaround for storing 64-bit floats in PoolRealArray 2021-01-16 21:46:01 +01:00
Hugo Locurcio e2c13c00f7
Document that PoolRealArray stores 32-bit floats
This closes #45230.
2021-01-16 16:48:09 +01:00
Phischermen 708f690b50
Add info about how gizmos affect transform notifications
(cherry picked from commit 72d1d7e948)
2021-01-15 16:49:46 +01:00
Andrii Doroshenko (Xrayez) b124c0c466
Expose `Resource.emit_changed()` to script
Also known as `emit_signal("changed")`.

(cherry picked from commit e94f46dcdb)
2021-01-15 16:49:46 +01:00
Alexander Pech d73281a350
Keep RichTextLabel visible character properties in sync
The RichTextLabel class is inconsistent in how it updates the
visible_characters and percent_visible properties when either is changed.

To keep both properties consistent, update percent_visible when setting the
visible_characters property.
For both properties, when setting one, notify change for the other.

Docs updated for member set_visible_characters on RichTextLabel class.

(cherry picked from commit 463e2002ab)
2021-01-15 16:49:46 +01:00
Rémi Verschelde 497653ab53
Merge pull request #44628 from JFonS/new_cpu_lightmapper_3.2
[3.2] New CPU lightmapper
2021-01-15 13:25:46 +01:00
JFonS b1ca82c43a CPU lightmapper fixes.
- Fix Embree runtime when using MinGW (patch by @RandomShaper).
- Fix baking of lightmaps on GridMaps.
- Fix some GLSL errors.
- Fix overflow in the number of shader variants (GLES2).
2021-01-15 12:32:54 +01:00
JFonS d909592fc5 Add documentation for new CPU lightmapper. 2021-01-15 12:31:46 +01:00
Marcel Admiraal 253b1c22da Rename the final parameter of area_shape_entered-exited local_shape. 2021-01-15 09:46:19 +00:00
Marcel Admiraal cdcd425432 Update area-body_shape_entered-exited signal documentation. 2021-01-15 09:46:17 +00:00
Rémi Verschelde d298949513
Merge pull request #42882 from madmiraal/fix-39767-3.2
[3.2] Set Bullet collision shape index to zero when using a single shape or ConcavePolygonShape
2021-01-14 20:46:06 +01:00
Rémi Verschelde 152415a006
Merge pull request #43924 from madmiraal/fix-43588-3.2
[3.2] Fix cast_motion sometimes failing
2021-01-14 20:44:40 +01:00
Rémi Verschelde b9c5e2f9eb
doc: Sync classref with current source
And fix copyright headers in new code.
2021-01-13 16:55:27 +01:00
TechnoPorg d824efda75
Fix incorrect parameter in audio_track_set_key_stream.
The description for audio_track_set_key_stream referenced a parameter called offset, which is not a parameter for that method. The description now references the correct parameter, stream.

(cherry picked from commit 81dc9be973)
2021-01-13 16:17:10 +01:00
skyace65 45cdb8aab3
Remove the implication that references and resources are not objected from their description
(cherry picked from commit dca298d22b)
2021-01-13 16:17:10 +01:00
Andrii Doroshenko (Xrayez) 9c9ac159e9
Clarify `lstrip()/rstrip()` methods in `String` for removed characters
(cherry picked from commit a2c82bbf5f)
2021-01-13 16:17:09 +01:00
kobewi d16f2bddee
Clarify class_get_method_list() in release exports
(cherry picked from commit 84acafb2ce)
2021-01-13 16:17:07 +01:00
Andrii Doroshenko (Xrayez) acd9abe507 Add `AspectRatioContainer` class
Backported from ba68383706.

Co-authored-by: Ugis Brekis <ugis.brekis@productmadness.com>
2021-01-12 16:25:26 +02:00
lawnjelly 690e07b509 Dynamic BVH for rendering and godot physics
Complete rewrite of spatial partitioning using a bounding volume hierarchy rather than octree.

Switchable in project settings between using octree or BVH for rendering and physics.
2021-01-12 12:12:10 +00:00