Commit graph

6480 commits

Author SHA1 Message Date
PouleyKetchoupp
5e978d1df5
Fix contact points debug for 3D Physics
Setting each point's position was missing for 3D. Now enabling collision
render debug will display contact points for 3D physics, the same way it
does for 2D physics.

Note: Multimesh rendering seems not to work in this scenario on master,
but it's working fine on 3.2.

(cherry picked from commit e5e9be8355)
2021-02-11 13:12:06 +01:00
Filip
9c4f16f4c1 Fixed completion box not showing properly [3.2] 2021-02-10 20:40:00 +01: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
Rémi Verschelde
daa0fe101e
Merge pull request #45813 from RandomShaper/keep_selected_visible_3.2
Keep selected node visible after filter change (3.2)
2021-02-09 10:43:37 +01:00
kobewi
2863c6117e
Set selected Tree item to null when deselected
Co-authored-by: Brody Eller <wviper3@gmail.com>
(cherry picked from commit ef8ec59f2f)
2021-02-08 22:36:37 +01:00
Kanabenki
dad0d4a8ee
Update ColorPicker controls when entering tree
(cherry picked from commit 03d4ebf129)
2021-02-08 22:36:37 +01:00
Rafał Mikrut
24d03afc9b
Fix nan errors when using VehicleBody
(cherry picked from commit 1b8cbcf946)
2021-02-08 22:36:36 +01:00
Oliver Dick
db57f32194
TextEdit: When left mouse is pressed to place the cursor, do not immediately adjust the viewport when cursor_set_line is called, but afterwards on cursor_set_column (effectively when the cursor reached its final position)
Fixes #45770

(cherry picked from commit 8d598693fc)
2021-02-08 22:36:36 +01:00
Rémi Verschelde
b060b2e68f
Merge pull request #45750 from revilo/3.2
[3.2] Bugfix: Update transform of collision shape on NOTIFICATION_PARENTED
2021-02-08 21:33:21 +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
Yuri Roubinsky
34d3235c84 [3.2] Visual Shader Parenthesis fix 2021-02-08 19:37:50 +03:00
Pedro J. Estébanez
e1054a17b5 Expose Tree::scroll_to_item() 2021-02-08 02:19:23 +01:00
Kayomn
d923df52c5 Accomodate blend shape ranges of -1 to +1 2021-02-07 21:42:02 +00:00
Rémi Verschelde
f05e068d6c
Merge pull request #45583 from lawnjelly/optimize_transform_propagate
Optimize transform propagation for hidden 3d objects
2021-02-06 12:23:52 +01:00
Rémi Verschelde
f36c529ad0
Merge pull request #45752 from JFonS/cpu_lightmapper_fixes
Assorted CPU lightmapper fixes
2021-02-06 11:44:52 +01:00
Oliver Dick
09924d6d73 Bugfix: Update transform of collision shape on NOTIFICATION_PARENTED (fixes invalid transform of collision shape in cases where the node is not supposed to enter the scene tree) 2021-02-06 02:41:16 +01:00
JFonS
27c1e65969 Assorted CPU lightmapper fixes
- Fix crash when a ray hits a texel with a UV2 coordinate exactly
  equal to 1.0.
- Take BakedLightmap extents into account.
- Clear capture data between bakes.
- Fix minor issues with seam correction.
2021-02-05 19:18:19 +01:00
muiroc
11fc3b8758 Use the blend parameter passed to blend_animation during graph processing
(cherry picked from commit 01bd1b33c7)
2021-02-05 09:26:50 +01:00
lawnjelly
cb8134f371 Optimize transform propagation for hidden objects
When visual instances are hidden, there is no need to update their global transforms and send these to the visual server. This only needs to be done when the objects are reshown.
2021-02-03 15:16:47 +00:00
Rémi Verschelde
30fd2f171d
Merge pull request #45497 from Chaosus/fix_particles_3.2
[3.2] Fix particles not properly updated by their lifetime
2021-02-03 15:51:14 +01:00
jfons
16bbe8ddf4
3D editor grid improvements
This commit adds a view-dependant fade to the 3D viewport grid. It fades out
at steep view angles to hide the solid regions that appear far from the camera.
I also included a fade to hide the grid borders.

I added some improvements to the dynamic grid when the camera is in orthogonal mode.
It properly handles zoom now, and the grid center is now set to the intersection point
between the grid plane and the camera forward ray, keeping the grid
always visible.

(cherry picked from commit 73e62dffb9)
2021-02-02 13:30:50 +01:00
Yuri Roubinsky
8689c1178d
Adds Metallic to spatial light input of visual shaders
(cherry picked from commit f4eef287f9)
2021-02-02 13:02:46 +01:00
kobewi
7a6ab8c558
Cache world in VisibilityNotifier3D to avoid crash
(cherry picked from commit 4d172f1fca)
2021-02-02 13:02:45 +01:00
Volka
c6824ec09d
Fix unintended SpinBox mouse capture
(cherry picked from commit ae2cf8eb38)
2021-02-02 13:02:42 +01:00
Rémi Verschelde
0b6dd929c6
Merge pull request #45169 from fmazan/3.2-completion-panel-positioning
[3.2] Fixed completion and hint panel positioning in TextExit
2021-02-01 20:50:38 +01:00
Rémi Verschelde
cea561e461
Merge pull request #45510 from TamplierS1/3.2
Fix disconnection between Gizmo and inspector values on BakedLightmap
2021-01-28 08:32:12 +01:00
Azamat Nabiullin
5611a17219 Fix disconnection between Gizmo and inspector values on BakedLightmap
After adding `_change_notify("extents");` to `set_extents()` method in `BakedLightmap` class
the issue was fixed

Fix disconnection between Gizmo and inspector values on BakedLightmap

Remove unnecessary `_change_notify("bake_extents")` call from `set_extents()`
2021-01-28 07:03:06 +03:00
HaSa1002
4ff0df702d Expose bookmark, breakpoint, and mark safe functions in TextEdit 2021-01-27 22:41:07 +01:00
kobewi
a7a490e650 Fix popup_centered() for scaled popups 2021-01-27 18:12:09 +01:00
Yuri Roubinsky
4ae5aa0153 [3.2] Fix particles not properly modified by their lifetime 2021-01-27 16:32:21 +03:00
hoontee
32d1efdb21
Do not clear materials when setting mesh
(cherry picked from commit 6e2a55c464)
2021-01-26 22:10:30 +01:00
kobewi
7ede2f36fe
Allow to override drop data in LineEdit
(cherry picked from commit a3a31591b5)
2021-01-26 17:24:55 +01:00
Hugo Locurcio
76bd7d796b
Make Range return 1.0 ratio if minimum and maximum values are equal
An error message is also no longer printed.
This matches the behavior found in most UI frameworks where having
equal minimum and maximum values is considered acceptable.

This closes #43179.

(cherry picked from commit 44204ec32d)
2021-01-26 17:00:17 +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
Rémi Verschelde
9f2c24e8ce
Cleanup: Remove executable bit from files which don't need it
Drop unused xpmfix.sh script.

(cherry picked from commit 76c6007aa6)
2021-01-26 17:00:15 +01:00
Hugo Locurcio
7133603238
Fix typo in theming methods ("botton" -> "bottom")
(cherry picked from commit 1f9cac1717)
2021-01-26 17:00:15 +01:00
HipsterPenguin
158314c0b9
Fixed 6DOF set/get check for the path starting with joint_constraints
New code checks whether or not property has joint_constraints as the first part of its path.

(cherry picked from commit 6bf46cf70f)
2021-01-26 17:00:15 +01:00
Rémi Verschelde
07be68e904
Merge pull request #45370 from naithar/fix/line_edit_clear
[3.2] [GUI] Fix LineEdit clearing
2021-01-26 12:30:58 +01:00
Sergey Minakov
7b8d6d2413 [GUI] Enforce virtual keyboard redisplay on clear 2021-01-26 13:18:14 +03:00
Yuri Sizov
a9552cefa2 Fix minimap capturing events and improve its theme
Add an editor setting for minimap opacity in visual editors
2021-01-25 21:49:34 +03:00
Lyuma
2c2f70c444 embree: cross compile fixes.
Fix typos in #if; add missing _MSC_VER; avoid warning in random generator.
2021-01-18 06:20:24 -08:00
Rémi Verschelde
bc47a8ae00
Merge pull request #39533 from hilfazer/editable-children-bugfixes
Fix Editable Children issues with node renaming, moving, duplicating and instancing.
2021-01-18 12:31:12 +01:00
Rafał Mikrut
f92ad30dfd Fix memory leak dynamic font 2021-01-17 17:53:13 +01:00
Rafał Mikrut
b213c441e4 Fix usage of deleted element in Area::_area_inout 2021-01-16 09:54:55 +01:00
Rémi Verschelde
029d2568c3
Merge pull request #45211 from akien-mga/3.2-cherrypicks
Cherry-picks for the 3.2 branch (future 3.2.4) - 17th batch
2021-01-15 17:09:32 +01:00
Rémi Verschelde
57e0ef7b95
Merge pull request #45198 from nekomatata/improved-raycast-node-render-debug-3.2
[3.2] Improve Raycast render debug
2021-01-15 16:51:04 +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
Rémi Verschelde
066716a46d
Merge pull request #42715 from madmiraal/fix-42614-3.2
[3.2] Update area-body_shape_entered-exited signal documentation.
2021-01-15 13:00:52 +01:00
Rémi Verschelde
258f41c024
Merge pull request #45150 from pycbouh/ge-disconnect-crash-3.2
[3.2] Prevent signal disconnection attempts on invalid references
2021-01-15 12:49:17 +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
Marcel Admiraal
253b1c22da Rename the final parameter of area_shape_entered-exited local_shape. 2021-01-15 09:46:19 +00:00
PouleyKetchoupp
37ef04c986 Improve Raycast render debug
Fix Raycast node render debug not showing in editor camera preview.

Use dynamic mesh update to change the ray on-the-fly without too much
extra cost when collision debug is enabled.

Fixes #43571
2021-01-14 15:51:22 -07:00
JFonS
7d7d7ef16d CPU lightmapper formatting and minor fixes. 2021-01-14 18:08:33 +01:00
JFonS
089da5a71b Gracefully handle atlassed lightmaps in GLES2. 2021-01-14 18:06:16 +01:00
JFonS
112b416056 Implement new CPU lightmapper
Completely re-write the lightmap generation code:
- Follow the general lightmapper code structure from 4.0.
- Use proper path tracing to compute the global illumination.
- Use atlassing to merge all lightmaps into a single texture (done by @RandomShaper)
- Use OpenImageDenoiser to improve the generated lightmaps.
- Take into account alpha transparency in material textures.
- Allow baking environment lighting.
- Add bicubic lightmap filtering.

There is some minor compatibility breakage in some properties and methods
in BakedLightmap, but lightmaps generated in previous engine versions
should work fine out of the box.

The scene importer has been changed to generate `.unwrap_cache` files
next to the imported scene files. These files *SHOULD* be added to any
version control system as they guarantee there won't be differences when
re-importing the scene from other OSes or engine versions.

This work started as a Google Summer of Code project; Was later funded by IMVU for a good amount of progress;
Was then finished and polished by me on my free time.

Co-authored-by: Pedro J. Estébanez <pedrojrulez@gmail.com>
2021-01-14 18:05:56 +01:00
Yuri Sizov
6b13c8482a Prevent signal disconnection attempts on invalid references 2021-01-14 15:21:12 +03:00
Filip
f1d00522f5 Fixed completion and hint panel positioning in TextExit [3.2] 2021-01-13 21:44:05 +01:00
Marcel Admiraal
b651db999c Fix not clearing a Joint3D with only a B node when removing the B node 2021-01-13 18:29:44 +00:00
Rémi Verschelde
f93c2ddc92
Merge pull request #45163 from akien-mga/3.2-cherrypicks
Cherry-picks for the 3.2 branch (future 3.2.4) - 16th batch
2021-01-13 17:38:05 +01:00
Rémi Verschelde
652105dcdd
Merge pull request #44704 from madmiraal/fix-44510-3.2
[3.2] Add signal to inform joint that body has exited tree
2021-01-13 17:16:19 +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
PouleyKetchoupp
a994bb4ad3
Fix collision shape update when changing shape properties
This change does two things:

1. Properly update the internal shape data using _update_in_shape_owner
when updating a shape (in 2D it was resetting one way collision)

2. Avoid unnecessary updates when calling set_shape with the same shape,
which happens each time a shape property is modified
(e.g shape.extents.x = ...)

Fixes #45090

(cherry picked from commit 4b43cd17c5)
2021-01-13 16:54:22 +01:00
Rafał Mikrut
8f19d50e27
Fix errors when removing non Control node from TabContainer
(cherry picked from commit 56734f44e5)
2021-01-13 16:17:10 +01:00
Rémi Verschelde
49646383f1
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆

(cherry picked from commit b5334d14f7)
2021-01-13 16:17:06 +01:00
Rémi Verschelde
188609e5ab
CI: Update to clang-format 11 and apply ternary operator changes
(cherry picked from commit af878716f2)
2021-01-13 16:14:35 +01:00
lawnjelly
b5edbe0301 Fix BVH physics project setting
Move the GLOBAL_DEF for the `godot_physics/use_bvh` to occur before GLOBAL_GET.

This prevents a warning occurring and the selection not being used.
2021-01-13 09:22:17 +00: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
Rémi Verschelde
08ecc9e5c4
Tooltips: Fix unassigned strip_edges() call on text
Fixes #43940, was a regression from #43280.

(cherry picked from commit a4af94068a)
2021-01-05 21:33:33 +01:00
Rémi Verschelde
5c80c94449
Revert "solved ctrl + alt + special character Issue #6851"
(cherry picked from commit 8b7f582f22)
2021-01-05 21:33:33 +01:00
Rafał Mikrut
927010e90f
Do not iterate over map when removing its values
(cherry picked from commit 29b2882381)
2021-01-05 20:49:00 +01:00
Eoin O'Neill
650f7c6f35
StateMachinePlayback: Added missing bindings to get_current_play_pos and get_current_length.
This allows the user to query the AnimationNodeStateMachinePlayback's current
play position and total length of current animation state. These methods are currently
used in the editor plugin, but can also be useful for querying general playback state
information.

Added documentation for AnimationNodeStateMachinePlayback's `get_current_play_position`

(cherry picked from commit 674fb52f52)
2021-01-05 20:48:57 +01:00
Rémi Verschelde
3032b38b52
Merge pull request #44690 from lawnjelly/transform_snap2
[3.2] Improve 2d snapping
2021-01-05 17:19:44 +01:00
Rémi Verschelde
6a708d6847
Merge pull request #43893 from Chaosus/vs_warnings_3.2
[3.2] Added extra warning to texture nodes in visual shader
2021-01-05 12:38:50 +01:00
Marcel Admiraal
6b3bab6e54 Add signal to inform joint that body has exited tree 2020-12-31 14:51:07 +00:00
Yuri Roubinsky
adfc646f8c
Added optional id parameter to PopupMenu::add_separator
(cherry picked from commit ca8c794d04)
2020-12-30 09:57:01 +01:00
kobewi
a227eefd2d
Rename offset to point in remove_point()
(cherry picked from commit 4f72a07eaa)
2020-12-29 16:02:03 +01:00
PouleyKetchoupp
1fccf78dd2
Update body transforms on joint2D setup
Body transforms from physics are used to setup the joint and they are
only updated before the physics step by default.

Without forcing the transform update, joints could use a previous
position if the body's position was set after it was added to the scene.

3D physics is not affected by this issue.

(cherry picked from commit 11bee25de4)
2020-12-29 16:02:02 +01:00
Rémi Verschelde
1a64f5d2ec
ProximityGroup: Fix access modifiers, rename private methods for clarity
See #36285 which mistakenly added documentation for the whole C++ API, while
some of it is meant to be and stay private as it's not exposed to scripts.
The access modifiers and method prefix were not used properly.

Cleanup code, and rename wrong `group_name` parameters to `method`, as it's a
method name which is being broadcast.

This is a very old class from pre-open source days, chances are that it was
just forgotten and not meant to be kept as is and undocumented.

(cherry picked from commit 79ba70f7ee)
2020-12-29 16:01:58 +01:00
Tomasz Chabora
107bd09636
Fix PathFollow3D updating on unit_offset 0
(cherry picked from commit cd42e938fc)
2020-12-29 15:12:10 +01:00
Dominik 'dreamsComeTrue' Jasiński
e0bdb19a62
Fix camera2d zoom when set to zero (causing ERROR: affine_invert: Condition ' det == 0 ' is true.)
Fixes: #41873
(cherry picked from commit aba477361d)
2020-12-29 13:50:49 +01:00
lawnjelly
a237c671bb Improve 2d snapping
Partially revert change allowing sprite get_rect snapping to be controlled by `pixel_snap` again rather than `transform_snap` (to prevent breaking compatibility). Adds a final `use_camera_snap` project setting to allow snapping viewports as in reduz original PR.
2020-12-25 18:53:00 +00:00
bruvzg
7ed2cf79ae
[3.2] Use base character advances for outline drawing. 2020-12-25 13:27:36 +02:00
Yuri Sizov
816fef21f9 Add a minimap to the GraphEdit 2020-12-18 01:31:17 +03:00
Sergey Minakov
f1fd0440f3 GUI: use cursor in TextEdit for non selected text. 2020-12-16 05:33:10 +03:00
Sergey Minakov
4c3b84b3d7 GUI: send cursor data from TextEdit 2020-12-16 05:05:38 +03:00
Marcel Admiraal
825ad65fc4 Remove Generic6DOFJoint precision property 2020-12-15 10:15:42 +00:00
Michael Alexsander
4fe554933c
Allow to circle back in 'PopupMenu' even if the first/last item is non-selectable
(cherry picked from commit bb39088201)
2020-12-10 14:02:06 +01:00
volzhs
c904cf612a
Add option to draw all tabs in front
(cherry picked from commit 814f9015f8)
2020-12-10 13:07:49 +01:00
Michael Alexsander
32da9dc1e9
Add "font_color_separator" theme property to 'PopupMenu'
(cherry picked from commit 383e8919e0)
2020-12-10 13:06:15 +01:00
volzhs
1663a9e87c
Update page value properly of ScrollContainer
(cherry picked from commit d89677442b)
2020-12-09 11:22:04 +01:00
Rémi Verschelde
84b62c0ba8
Merge pull request #44212 from bruvzg/color_font_fix_32
[3.2] Fix fallback emoji font color.
2020-12-09 11:20:39 +01:00
bruvzg
1b4fab3318
[3.2] Fix fallback emoji font color. 2020-12-09 11:20:55 +02:00
Rémi Verschelde
e30d4fc6ed
Merge pull request #44167 from madmiraal/remove-chain-tip-copy-constructor-3.2
[3.2] Remove ChainTip copy constructor
2020-12-08 09:40:20 +01:00
Marcel Admiraal
79952c5435 Remove ChainTip copy constructor 2020-12-07 12:32:49 +00:00
bruvzg
4d58321850
[3.2] Load dynamic fonts to memory on all platforms, to avoid locked files. 2020-12-07 10:24:30 +02:00
Rémi Verschelde
759e53f9c0
Merge pull request #44130 from Calinou/tweak-material-height-hints-3.2
Tweak SpatialMaterial height property hints (3.2)
2020-12-06 09:35:32 +01:00
Hugo Locurcio
9f6628f5ab
Tweak SpatialMaterial height property hints
- Allow finer adjustments of the heightmap scale.
- Allow increasing the heightmap level detail (at the cost of performance).
2020-12-05 21:44:39 +01:00
rileylyman
3c5fb3bbc7
skip extra newline in .tscn when renaming dependency
(cherry picked from commit 40ce9bfc2d)
2020-12-01 09:00:53 +01:00
Rémi Verschelde
f7061fd559
Buttons: Don't use deprecated set_enabled_focus_mode
It's better to use the equivalent, non-deprecated API.
Follow-up to #43974.
2020-11-30 11:16:15 +01:00
Rémi Verschelde
4f30cdfc33
Merge pull request #43972 from volzhs/fix-tab-container-3
Fix TabContainer crashes
2020-11-30 09:41:39 +01:00
FIF15
f07fb4e595 fix #43695 by revert part of #41577
Restore the default focus mode for MenuButton and LinkButton,
since it is different from the default of BaseButton.
2020-11-30 10:47:26 +08:00
volzhs
efade4034b Fix no padding between icon and text in TabContainer 2020-11-30 11:36:57 +09:00
volzhs
8e10e33762 Fix TabContainer crashes 2020-11-30 11:02:18 +09:00
Yuri Roubinsky
3223747d0d [3.2] Added extra warning to texture nodes in visual shader 2020-11-26 19:14:33 +03:00
Rémi Verschelde
b9b773c3f0
Merge pull request #43881 from akien-mga/3.2-cherrypicks
Cherry-picks for the 3.2 branch (future 3.2.4) - 10th batch
2020-11-26 10:39:20 +01:00
Rémi Verschelde
5b504eaa69
Merge pull request #43866 from madmiraal/fix-43852-3.2
[3.2] Check joint nodes and generate configuration warning messages.
2020-11-26 10:21:54 +01:00
Tomasz Chabora
0c50509326
Update clear button when clicked
(cherry picked from commit 836b78f329)
2020-11-26 09:38:47 +01:00
volzhs
8aeeec034d
Fix to update scroll bar has correct max value in ScrollContainer
(cherry picked from commit 67c2f2445f)
2020-11-26 09:38:47 +01:00
greenfox
b7a712d9f3
fixed Camera2D rotation with non-square zoom
(cherry picked from commit b9c0897713)
2020-11-26 09:38:46 +01:00
Rémi Verschelde
ac8dedd532
doc: Warn about using Node internal processing
See #43689.

Also 'fixed' some spelling for behavior in publicly visible strings.
(Sorry en_GB, en_CA, en_AU, and more... Silicon Valley won the tech spelling
war.)

(cherry picked from commit a655de89e3)
2020-11-26 09:38:45 +01:00
Andrii Doroshenko (Xrayez)
e95e934d88
Do not start Timer upon manual switching of internal process
Prevents `Timer` to prematurely start and timeout immediately if internal
processing is enabled manually with `Timer.set_process_internal(true)` or
`Timer.set_physics_process_internal(true)`.

Even if the internal processing is enabled manually, the user still has to
actually start the timer with `start()` method explicitly.

(cherry picked from commit afcb6f38db)
2020-11-26 09:38:45 +01:00
Rémi Verschelde
94c31175de
Merge pull request #43152 from Chaosus/color_autocompletion_3.2
[3.2] Shows ColorRect in Color constants autocompletion
2020-11-26 09:32:32 +01:00
Marcel Admiraal
e0e7332135 Check joint nodes and generate configuration warning messages. 2020-11-25 20:53:48 +00:00
Andrii Doroshenko (Xrayez)
2edd489f83 Describe ImageTexture, Image creation and usage
Ported from commit 0ee88d6705.
2020-11-17 18:06:52 +02:00
Hugo Locurcio
3a46e01af3
Remove property groups for Pause Mode and Script
Each of those only grouped 1 property, making them useless.

This closes https://github.com/godotengine/godot-proposals/issues/1840.

(cherry picked from commit 5770e08c2a)
2020-11-17 12:07:02 +01:00
Michael Alexsander
fc1f5e149f
Fix WAV resources ignoring the AudioServer's 'global_rate_scale' value
(cherry picked from commit 04ebe4e7a4)
2020-11-17 12:07:01 +01:00
lawnjelly
a79293e0fc Add 2d snap transforms option
This is a cut back backport of reduz snapping PR #43194.

It just offers a global project setting for transform snapping.
2020-11-15 09:40:07 +00:00
PouleyKetchoupp
9b64646bc3
Expose LineEdit scroll offset to scripts
(cherry picked from commit 4775db1600)
2020-11-11 15:44:18 +01:00
Rémi Verschelde
05143ca39a
Tooltips: Improve code clarity and docs
The return type for `_make_custom_tooltip` is clarified as Control, and users
should make sure to return a visible node for proper size calculations.

Moreover in the current master branch, a PopupPanel will be added as parent
to the provided tooltip to make it a sub-window.

Clarifies documentation for `Control._make_custom_tooltip`, and shows how to
use the (until now undocumented) "TooltipPanel" and "TooltipLabel" theme types
to style tooltips.

Fixes #39677.

(cherry picked from commit c5d8dafec4)
2020-11-11 15:30:56 +01:00
volzhs
f4d181179c
Put unselected tabs back in TabContainer control
(cherry picked from commits 9eaa5ffab5
and 8a588343db)
2020-11-11 15:30:54 +01:00
Pedro J. Estébanez
a45bf288e8
Fix premature end of animation playing backwards
(cherry picked from commit 826af5b28a)
2020-11-11 15:12:01 +01:00
Meriipu
969e60f6b2
Make the currently hovered control get updated on mouse-release
Previously, when the mouse was released after dragging a scrollbar,
its highlight was not dropped (if the mouse cursor was still inside
the viewport). This seems to be because the currently hovered control
only gets updated when the mouse is moved.

This commit fixes the dropping of the cosmetic highlight by running
the check for whether the currently hovered control has changed on
mouse-clicks, in addition to to the existing mouse-movements.

(cherry picked from commit e8804b9978)
2020-11-11 15:12:01 +01:00
lawnjelly
fed764b342 Fix editor constant redraw from fxaa and debanding.
Every NOTIFICATION_PROCESS the spatial_editor_plugin.cpp is calling set_use_fxaa which is causing a redraw_request(). Same with debanding.

These can be fixed be checking for noop state changes.
2020-11-02 10:13:18 +00:00
Rémi Verschelde
c43b2ab603
Merge pull request #42942 from Calinou/add-viewport-debanding-3.2
Add a debanding property to Viewport for GLES3
2020-10-30 11:47:57 +01:00
Hugo Locurcio
575dbd4bb2
Fix artifacts in DynamicFont when scaling with filtering enabled 2020-10-29 00:33:11 +01:00
Eric Tuvesson
9320266fe8
fix(sprite2d): Rect is not handling pixel snap
related https://github.com/godotengine/godot/issues/42985

(cherry picked from commit e892a92ad6)
2020-10-28 15:09:16 +01:00
Gilles Roudière
638e24684f
Fixes setting top_level not updating the global position
(cherry picked from commit 131a7b58c8)
2020-10-28 14:05:42 +01:00
Andrii Doroshenko (Xrayez)
921046c822
Add border_width to ReferenceRect
Exposes a hidden parameter behind `CanvasItem.draw_rect()`.

(cherry picked from commit aef00021a9)
2020-10-28 14:05:40 +01:00
Gabriel Van Eyck
7735cdaf8f
Fix emit_signal timing for GraphEdit's begin/end node move
(cherry picked from commit fbc095dc78)
2020-10-28 14:05:40 +01:00
Dominik 'dreamsComeTrue' Jasiński
ba00ced445
TextEdit - fix valid bounds in 'set_line'. Fixes #41967
(cherry picked from commit 99c8a07919)
2020-10-28 14:05:39 +01:00
Yuri Roubinsky
374253242d [3.2] Shows ColorRect in Color constants autocompletion 2020-10-28 12:39:41 +03:00
Hugo Locurcio
3499799cb3
Improve the font oversampling warning messages to be more descriptive 2020-10-27 12:27:41 +01:00
hilfazer
6dbc08668b Move Editable Children information from scene's root to instanced nodes 2020-10-26 11:55:47 +01:00
Hugo Locurcio
2dbc329704
Add a debanding property to Viewport for GLES3
It can be enabled in the Project Settings
(`rendering/quality/filters/use_debanding`). It's disabled
by default as it has a small performance impact and can make
PNG screenshots much larger (due to how dithering works).

As a result, it should be enabled only when banding is noticeable enough.

Since debanding requires a HDR viewport to work, it's only supported
in the GLES3 backend.
2020-10-20 19:07:15 +02:00
Rémi Verschelde
150f9ce807
Merge pull request #42009 from Calinou/theme-node-type-3.2
Rename the `type` parameter to `node_type` in Theme and Control (3.2)
2020-10-20 15:58:41 +02:00
Hugo Locurcio
af45c97652
Add fast approximate antialiasing (FXAA) to Viewport
This backports FXAA from the `master` branch.

Co-authored-by: Clay John <claynjohn@gmail.com>
2020-10-20 14:54:52 +02:00
Rémi Verschelde
a239894827
Merge pull request #42902 from akien-mga/3.2-cherrypicks
Cherry-picks for the 3.2 branch (future 3.2.4) - 5th batch
2020-10-19 22:14:05 +02:00
Juan Linietsky
388ebfb498
Merge pull request #41629 from JFonS/disable_baked_lights
Disable lights for objects with baked lighting
2020-10-19 14:12:50 -03:00
Rémi Verschelde
4028414e0e
Revert "Made toplevel a property for Node3D and CanvasItem"
This reverts commit a726d011d5.
2020-10-19 16:58:56 +02:00
volzhs
78143ee93e
Respect Tree.set_icon_max_width size for drawing selection box
(cherry picked from commit cac4fedb2a)
2020-10-19 16:10:00 +02:00
Duroxxigar
11a07d071a
Added a more helpful error message when there is no current animation for the animation player
(cherry picked from commit 8bfeb9d6ae)
2020-10-19 16:09:58 +02:00
Dashcell
c43e8d8fbd
Dropping file on parrent dirrectory fixed
(cherry picked from commit 1ac936f035)
2020-10-19 15:14:13 +02:00
Hugo Locurcio
34ac0387d6
Deprecate the GIProbe Compress property due to known bugs
This property introduced green artifacts in GI and didn't improve
performance.

The new GIProbe in `master` no longer has a Compress property.
2020-10-19 14:51:23 +02:00
Rémi Verschelde
3495cb91d8
Merge pull request #41577 from FIF15/deprecate-redundant-property-enabled-focus-mode
Deprecate Redundant property enabled_focus_mode
2020-10-19 14:15:43 +02:00
PouleyKetchoupp
5c831bc8d6 Fix mesh instance materials not initialized correctly
This fixes a regression from PR #40313 (support for software skinning in MeshInstance).

Before, the base mesh was always updated on load even if not skinning
was used, which caused mesh instance materials to be reset on the
rendering side.

Now the base mesh is set only when it has been modified, or when
switching software skinning on or off. In this case the mesh instance
materials are always updated properly afterwards.
2020-10-16 09:33:24 +02:00
FIF15
8311a37ed9 Deprecate Redundant property enabled_focus_mode
of BaseButton
see #41529 for details
this closes #41529
2020-10-16 14:14:04 +08:00
lawnjelly
0abae185c8 Change per frame software skinning check to is_visible
My mistake I missed this before the PR got merged:

is_visible_in_tree() should be avoided being called per frame unless absolutely necessary, because it is a recursive function that traverses the scene tree. It should be used when deciding on rare occasions whether to switch on or off skeleton processing, but it is better to use the cheaper is_visible() check on the per frame update.
2020-10-12 19:03:43 +01:00
JFonS
fcb00ca048 Disable lights for objects with baked lighting
Don't apply lighting to objects when they have a lightmap texture and
the light is set to BAKE_ALL. This prevents applying the same direct
light twice on the same object and makes setting up scenes with mixed
lighting much easier.
2020-10-11 20:41:40 +02:00
Hugo Locurcio
ad4e80f2fa
Recommend restarting after changing the reflection atlas size or HDR
This closes #42687.
2020-10-10 17:04:00 +02:00
PouleyKetchoupp
f9544716f4 Option for software skinning in MeshInstance
Option in MeshInstance to enable software skinning, in order to test
against the current USE_SKELETON_SOFTWARE path which causes problems
with bad performance.

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2020-10-08 16:14:55 +02:00
lolligerjoj
0586c856f6
Expose Animation::value_track_interpolate to GDscript
(cherry picked from commit ff4af94414)
2020-10-04 20:50:34 +02:00
clayjohn
89677b5b7f Use full float UVs in Sprite3D 2020-10-03 10:54:14 -07:00
Marcel Admiraal
be41b818c4 Remove area or body from map before emitting signals. 2020-10-02 17:01:47 +01:00
Rémi Verschelde
10fa15a047
Better validate CollisionShape config. warning after #37226
It could cause a crash when running the test for PlaneShape.
Fixes #42479.
2020-10-02 09:51:45 +02:00
Yuri Roubinsky
ec7228a675 [3.2] Optimizations for Fresnel and Texture nodes in visual shaders 2020-10-02 08:42:06 +03:00
Duroxxigar
a726d011d5
Made toplevel a property for Node3D and CanvasItem
(cherry picked from commit 85a8dbb7b6)
2020-10-01 16:00:47 +02:00
Rémi Verschelde
e40b4eeeea
Merge pull request #37226 from arrowinaknee/fix-node-config-warnings
[3.2] Update get_configuration_warning() overrides to retrieve warnings from parent class
2020-10-01 14:04:26 +02:00
Rémi Verschelde
9da889ff29
Merge pull request #40555 from RandomShaper/fix_debugger_autofocus_3.2
Fix debugger not getting focused on break on Windows (3.2)
2020-10-01 13:54:38 +02:00
Rémi Verschelde
ef223f3aa7
Merge pull request #41185 from Chaosus/vs_uniform_ref_3.2
[3.2] Added UniformRef visual shader node
2020-10-01 13:50:08 +02:00
Danil Alexeev
ebb5821bce
Improve appearance of [connection] and [editable] sections in .tscn files
(cherry picked from commit 02c0edac60)
2020-09-29 13:57:58 +02:00
Haoyu Qiu
fa81e3621f
Fixes ParallaxLayer offset when ignore camera zoom
(cherry picked from commit 5e2167631b)
2020-09-29 13:57:56 +02:00
D00T24
766b637ed0
changed max point limit to 1 instead of 2
(cherry picked from commit bcc0493a4a)
2020-09-29 13:57:56 +02:00
Hugo Locurcio
a4651b59fb
Add a property hint to StyleBoxFlat shadow_size for editor usability
This adds a visible range to the slider so it can be dragged more easily.

This closes #42309.

(cherry picked from commit feb4002017)
2020-09-29 08:54:45 +02:00
Danil Alexeev
44bdd8f16c
Improvement for the Copy button in the Output Log
Now if no text is selected, pressing the Copy button copies the entire text.

(cherry picked from commit fb6eb21afc)
2020-09-29 08:54:45 +02:00
clayjohn
b730c5596c Restore default alpha_scissor_threshold to Sprite3D 2020-09-27 22:54:50 -07:00
Michael Alexsander
2d848227cf
Add 'get_previous_tab()' to 'Tabs'
(cherry picked from commit 2b319889cb)
2020-09-24 14:43:10 +02:00
Jonathan Vice
96ca267209
Reorder sprite h_frames & v_frames
(cherry picked from commit 28326aec60)
2020-09-24 14:43:10 +02:00
HellonLegs
9340385731
LineEdit/TextEdit: solved control + alt issue
(cherry picked from commit f412237f38)
2020-09-24 14:43:08 +02:00
booer
bf9090c23f
Fixes updating CPUParticles emmision shape values
(cherry picked from commit 113921b56c)
2020-09-24 14:43:08 +02:00
Ryan Roden-Corrent
c11edbdcb3
Fix hints on PhysicsMaterial bounce/friction.
These values are only meaningful in the range 0 to 1.
Make sure the editor enforces reasonable values.
Fixes #42202.

(cherry picked from commit 6c18baee9c)
2020-09-24 14:43:07 +02:00
Somnath Sarkar
1f7a3e0f8d
Sort points in a Gradient for color and offset updates.
(cherry picked from commit d5d832417e)
2020-09-24 14:43:06 +02:00
mvl
be13df0a08
Fix bug where leading and trailing spaces werent taken into account with center and right allignment.
(cherry picked from commit 4318ad94ac)
2020-09-24 14:43:05 +02:00
Eric M
e24b9f0520
Fixed bug where spinbox would not update to it's actual value after non-numeric input
(cherry picked from commit e76e39d5f5)
2020-09-24 12:08:10 +02:00
Zak
d94323e37b
Adds automatic update for region_rect
When changing the texture region for a StyleBox, the regions was not updating automatically in the Texture editor.

(cherry picked from commit 7d7727bade)
2020-09-24 12:05:34 +02:00
Rémi Verschelde
c8859f0463
Fix typos with codespell
Using codespell 1.17.1.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2020-09-18 14:09:51 +02:00
Hugo Locurcio
369e5a7f35
Mark InterpolatedCamera as deprecated
InterpolatedCamera has already been removed from the `master` branch.
This adds a deprecation notice to inform people about the upcoming removal
in Godot 4.0.

Its functionality could be replicated in a GDScript add-on with relative
ease.
2020-09-16 15:36:40 +02:00
clayjohn
a4f2fea2ae Fix axis bug regression in Sprite3D 2020-09-15 08:02:19 -07:00
Hugo Locurcio
e36587751f
Rename the type parameter to node_type in Theme and Control
This makes it clearer that it expects a node type as a string (such as "Label")
instead of a type like "TYPE_ARRAY". This is backwards-compatible since only
the name of the parameter is changed, not its order.

See https://github.com/godotengine/godot-proposals/issues/1495#issuecomment-691507839
2020-09-12 18:42:45 +02:00
Wilson E. Alvarez
2b7c9d9070
Disconnect item_rect_changed when removing a child of GraphEdit 2020-09-11 17:36:55 -04:00
PouleyKetchoupp
819765130d
Fix RichTextLabel alignment for clickable regions
Fixes #41006 (regression from #39164).

The original alignment fix was limited to PROCESS_DRAW mode, which
caused some discrepancies with PROCESS_POINTER mode.
Now only PROCESS_CACHE is excluded with a condition a few lines above.

(cherry picked from commit b783fa1416)
2020-09-11 11:15:40 +02:00
Rémi Verschelde
4a9264271d
doc: Sync classref with current source 2020-09-08 14:20:53 +02:00
Marcel Admiraal
f26131fca5
Check if old mouse column is still available.
(cherry picked from commit 79802b31a9)
2020-09-08 13:39:32 +02:00
PouleyKetchoupp
c21d14fe69
Fix LineEdit not consuming enter events
LineEdit should not return early when processing KEY_ENTER, so it can
consume the event properly.

Regression introduced by mistake while fixing enter events for Android
(PR #40487 - c0b394572f)

(cherry picked from commit 5c63dec36e)
2020-09-08 13:38:58 +02:00
Rémi Verschelde
3f276033c1
Merge pull request #41536 from Chaosus/vs_fix_specular_3.2
[3.2] Fix specular render_mode for visual shaders
2020-09-08 09:46:12 +02:00
Fredia Huya-Kouadio
0af5cded1e Fix the update logic for user-added custom defines.
The previous logic was causing the (unintentional) removal of custom defines automatically added by the engine.
2020-09-06 21:31:09 -07:00
Rémi Verschelde
8a66ea7cb0
Revert "Updated LineEdit to address #41278"
This reverts commit 1b6d116dfb.
2020-09-01 14:01:50 +02:00
Tony-Goat
1b6d116dfb
Updated LineEdit to address #41278
Updated set_max_length() function to actually pull a substring of the current text so it's not all thrown away when the new max length is shorter than the current length.

(cherry picked from commit 71febfd6e2)
2020-08-31 15:53:56 +02:00
Andrii Doroshenko (Xrayez)
7493bc5530
Make AnimatedTexture.MAX_FRAMES public
The constant is already exposed in GDScript, but not in C++.
This information is useful for implementing animated texture
resource importers via modules.

(cherry picked from commit 528056a3c5)
2020-08-31 15:29:43 +02:00
Yuri Roubinsky
7facd00ace [3.2] Fix specular render_mode for visual shaders 2020-08-28 13:06:55 +03:00
Rémi Verschelde
2d42625184
Revert "bug with Tween.is_active, fixes #39760"
This reverts commit 8ef40b9306.
2020-08-25 12:58:40 +02:00
PouleyKetchoupp
d82cc621e1
Fix 2D Particle velocity with directed emission mask
Changed CPU velocity calculation for EMISSION_SHAPE_DIRECTED_POINTS
to follow the same logic as in the GPU version:
mat2 rotm;
rotm[0] = texelFetch(emission_texture_normal, emission_tex_ofs, 0).xy;
rotm[1] = rotm[0].yx * vec2(1.0, -1.0);
VELOCITY.xy = rotm * VELOCITY.xy;

Now both CPUParticles2D & CPUParticles3D (z disabled) show the same results
as their GPU counterparts and take the initial velocity settings into account.

(cherry picked from commit 1c231cacb3)
2020-08-21 02:28:19 +02:00
Rémi Verschelde
a6ef6b10b2 Revert "Fixes the get_visible_line_count() of rich text label"
This reverts commit dc7e9d46e6.
2020-08-17 11:21:36 +02:00
Cheeseness
e70b165c61 Skip indentation of empty lines when indenting a selection.
(cherry picked from commit 1f159306ed)
2020-08-17 11:04:36 +02:00
Rémi Verschelde
5acc78ac81
Merge pull request #41314 from clayjohn/Sprite3D-uvs
Check for uncompressed uvs in Sprite3D
2020-08-17 08:44:51 +02:00
clayjohn
d33a9aaacb Check for uncompressed uvs in Sprite3D 2020-08-16 19:19:14 -07:00
Tomasz Chabora
7ce476c425 Expose NOTIFICATION_POST_ENTER_TREE
(cherry picked from commit 677796a2c3)
2020-08-14 00:32:05 +02:00
Umang Kalra
330afdd6cb Fix RichTextLabel center alignment bug
Fixes #40207.

(cherry picked from commit cec21ab82c)
2020-08-14 00:32:05 +02:00
Yuri Roubinsky
d0c705781c [3.2] Added UniformRef visual shader node 2020-08-11 15:04:06 +03:00