Commit Graph

29724 Commits

Author SHA1 Message Date
lawnjelly e8da16b032 Batching - prevent applying final modulate on CPU when it is sent in FVF
When using modulate_fvf, final_modulate was still being applied on CPU in some circumstances, AS WELL as in the shader. This double application resulted in the wrong color.

This PR prevents CPU multiplication of final_modulate when modulate_fvf is in use.

It also applies an OR to the joined item flags with each item joined. This fixes a bug where a smaller FVF is used than required, resulting in incorrect colors.
2021-04-12 17:41:48 +01:00
Rémi Verschelde c406f569aa
Merge pull request #47832 from lawnjelly/ewok_store_batch_items
Batching - store parent items in default batches
2021-04-12 18:21:25 +02:00
lawnjelly 40a267cf25 Batching - store parent items in default batches
In rare cases default batches could occur which were containing commands that were not owned by the first item referenced by the joined item. This had assumed to be the case, and would read the wrong command, or crash.

Instead for safety in this PR we now store a pointer to the parent item in default batches, and use this to determine the correct command list instead of assuming.
2021-04-12 16:55:59 +01:00
kobewi f72c91e0b1
Expose edit_node() for editor plugins
(cherry picked from commit 72014a7a2e)
2021-04-12 09:24:37 +02:00
Hugo Locurcio 2c06545266
Improve command line `--print-fps` display
- Display the frame time in addition to FPS.
  - Frame time is a more objective measurement in comparison to FPS,
    but FPS is more familiar to people less acquainted with profiling.
- Rename "Game" to "Project" for the project FPS printing line.

(cherry picked from commit 157d8e4d36)
2021-04-12 00:23:44 +02:00
Hugo Locurcio cd4906ee0b
Document secure wss:// caveats for WebSocketClient
See https://github.com/godotengine/godot/issues/37739.

(cherry picked from commit a56e37545b)
2021-04-12 00:23:44 +02:00
Aaron Franke 9b928cbd9e
Show a message when trying to zoom farther than the limit
(cherry picked from commit b8f66d58b6)
2021-04-12 00:23:43 +02:00
Anders Stenberg c4f941114c
Add missing color argument in forward_canvas_draw_over_viewport example.
(cherry picked from commit 034c48dbed)
2021-04-12 00:23:43 +02:00
Haoyu Qiu 14cea66f23
Fixes Node3D rotation in select mode on macOS
(cherry picked from commit 879a290ed9)
2021-04-12 00:23:43 +02:00
Johannes 9a7e537aac
Fix `_File::get_buffer` length always set to p_length
(cherry picked from commit 33d6eccdec)
2021-04-12 00:23:43 +02:00
Daniel Kříž edcb95cede
fix wrong encoding in uri_encode
(cherry picked from commit 13c999d9d7)
2021-04-12 00:23:43 +02:00
Rémi Verschelde f3476b66c4
Merge pull request #47213 from timothyqiu/project-icon-size-3.x
[3.x] Fix project icon size in Project Manager
2021-04-12 00:08:40 +02:00
Rémi Verschelde ed077e4d1f
Merge pull request #47792 from timothyqiu/spatial-selection-box
[3.x] Fix 3D selection box size for Spatial
2021-04-11 14:02:56 +02:00
Haoyu Qiu bfa5adb84f Fix 3D selection box size for Spatial 2021-04-11 19:01:37 +08:00
Rémi Verschelde 7a9c14e276
Merge pull request #47759 from m4gr3d/update_activity_result_behavior_3_3
[3.x] Fix issue causing the response callback to be invoked with the invalid `requestCode`
2021-04-09 22:57:25 +02:00
Fredia Huya-Kouadio dedeada310 Fix issue causing the response callback to be invoked with the invalid `requestCode`. 2021-04-09 13:38:36 -07:00
Morris Tabor d9e9aec9b9 fix gltf importer regression from b032067e42, causing different BoneAttachment names 2021-04-09 10:25:45 +02:00
Rémi Verschelde 5fe89e8ccd
Merge pull request #47738 from TwistedTwigleg/skeletonik_changes_and_bug_fixes_regressionfix2_godot3x
[3.x] Fix for SkeletonIK not working correctly with 0 interpolation and incorrectly rotating with animation
2021-04-09 09:00:16 +02:00
TwistedTwigleg 9c33f091cd Godot 3.x backport: Fix for SkeletonIK not working correctly with 0 interpolation and incorrectly rotating with animation. Now the root bone rotates differently to ensure it always rotates correctly and works with BoneAttachment nodes. 2021-04-08 18:45:54 -04:00
Rémi Verschelde e3c59bf0ff
Merge pull request #47718 from lyuma/fbx_empty_crash_3.3
Fix crash on importing empty .fbx file (3.x Backport)
2021-04-08 13:02:11 +02:00
Lyuma 5cf5e7e3d3 Fix crash on importing empty .fbx file for 3.x 2021-04-08 02:52:15 -07:00
Nathan Franke 8dd6fd058a
Improve Ambiguous StreamPeerTCP `set_no_delay` Documentation
(cherry picked from commit dbff957028)
2021-04-07 11:55:11 +02:00
Rémi Verschelde ed44e2806f
doc: Fix markup issues in classref 2021-04-07 11:52:44 +02:00
Alex Hirsch 6a7ee81610
Always dynamically allocate PropertyTable
- `Texture::~Texture` expects `props` to be dynamically allocated.

- `GetPropertyTable` returned a pointer to an existing `PropertyTable`
  but is expected to return a newly, dynamically allocated one.

- `PropertyTable::PropertyTable()` suggests that an empty `element`
  property is valid.

fix #46876
fix #45573

(cherry picked from commit 09bda3f140)
2021-04-07 11:26:19 +02:00
Rémi Verschelde b076150b08
Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@01dce71403.

(cherry picked from commit f83486b430)
2021-04-06 22:53:20 +02:00
Marcel Admiraal 1e28e234c5
Check for the use of an empty shape in Bullet Kinematic collisions
(cherry picked from commit ff9a6c4e39)
2021-04-06 22:37:35 +02:00
Marcel Admiraal a3f4bd96c5
Ensure ConvexPolygonShape support count variable is initialised
(cherry picked from commit 0d4d8925b7)
2021-04-06 22:37:03 +02:00
Rémi Verschelde bd9ee18fb1
Merge pull request #47679 from madmiraal/fix-47436.1-3.x
[3.x] Check for empty ConcavePolygonShape2D before checking for intersection
2021-04-06 22:36:01 +02:00
Rémi Verschelde a145f4a5dc
Merge pull request #47677 from madmiraal/fix-47436-3.x
[3.x] Check ConvexPolygonShape2D point count before calcuating moment of inertia
2021-04-06 22:35:10 +02:00
Rémi Verschelde cd728abb98
Merge pull request #47669 from madmiraal/fix-47438-3.x
[3.x] Ensure ConvexPolygonShape support count variable is initialised
2021-04-06 22:34:36 +02:00
Rémi Verschelde fa4ad3c5c2
Merge pull request #47682 from akien-mga/3.x-android-javavm-threads
[3.x] Android: Fix access to JavaVM for threads after #45618
2021-04-06 22:21:02 +02:00
Bastiaan Olij abaa032fae
Fixes on android:
- checking for validity of ENV in wrapper classes
- fix for access to JavaVM from threads

(cherry picked from commit b3a43430aa)
2021-04-06 22:02:10 +02:00
Marcel Admiraal 83da95b6e4 Check for empty ConcavePolygonShape2D before checking for intersection 2021-04-06 19:43:51 +01:00
Marcel Admiraal ebcff3b4a6 Check ConvexPolygonShape2D point count before calcuating moment of inertia 2021-04-06 19:11:40 +01:00
Marcel Admiraal 28c7b3a17d Ensure ConvexPolygonShape support count variable is initialised 2021-04-06 16:46:04 +01:00
Rémi Verschelde e97cd3d52d
Merge pull request #47659 from Faless/js/3.x_webgl_fallback
[3.x] [HTML5] Implement WebGL fallback.
2021-04-06 13:06:19 +02:00
Fabio Alessandrelli 00f3807a24 [HTML5] Implement WebGL fallback.
According to project settings and when WebGL2 is not available.
2021-04-06 12:56:45 +02:00
Yuri Sizov ea5b3dda93
Expose editor scale to the plugin API
(cherry picked from commit ea31af68ba)
2021-04-06 10:18:20 +02:00
Hugo Locurcio 566213e08d
Add a subtle background to editor scrollbars
This makes it possible to see whether a scrollbar grabber is at the top
or at the bottom of a scrollbar. Also, if a scrollable area is very
large, this makes it easier to notice that the area can be scrolled
(since the grabber is proportionally very small).

The scrollbar grabbers were also made thicker and slightly more opaque
for better visibility, especially in peripheral vision.

(cherry picked from commit b60b6ddba4)
2021-04-06 10:04:51 +02:00
Bastiaan Olij 5228871e26
Only cleanup meta data if GDNative library is reloadable and we're about to unload it
(cherry picked from commit 81131bd844)
2021-04-06 10:03:41 +02:00
Rémi Verschelde 48b7e73e44
Update AUTHORS and DONORS list
New contributor added to AUTHORS:
@gongpha, @jmb462

Thanks to all contributors and donors for making Godot possible!

(cherry picked from commit 3d84fa85b4)
2021-04-05 17:36:17 +02:00
Rémi Verschelde 5cfdb86660
i18n: Sync translations with Weblate 2021-04-05 16:30:04 +02:00
Rémi Verschelde 822b734601
Re-allow playing AnimatedSprite2D without frames
Fixes #47578, partial revert of #47064.

(cherry picked from commit 77264e346b)
2021-04-05 15:01:01 +02:00
RoniPerson 79f4da78fb
Added missing `:` in gdscript example.
(cherry picked from commit 5870931a15)
2021-04-05 12:03:40 +02:00
Jan Haller f64d9423a5
Fixes #47607 (forgotten statement in GDNative cleanup)
Co-authored-by: geekrelief <geekrelief@gmail.com>
(cherry picked from commit 0fe851da23)
2021-04-05 12:02:56 +02:00
jmb462 ce4dec647c
fix crash on null class in ClassDB.get_property() and set_property()
(cherry picked from commit 400843c172)
2021-04-05 12:02:32 +02:00
bruvzg d844e72157
RichTextLabel: On custom effect change, parse bbcode only if it's enabled and not empty.
(cherry picked from commit 9f73abfa9f)
2021-04-05 12:01:51 +02:00
megalobyte 724a18cf72
Use double when setting the default step size
Casting it as a float was causing issues with the progress bar

(cherry picked from commit d0f3817876)
2021-04-05 12:01:18 +02:00
Fabio Alessandrelli f90b24a805
[HTML5] Disable body_size in fetch.
We were using `Content-Length` from the server when `Content-Encoding`
was not set (i.e. response was not compressed).

Sadly, in CORS requests accessing headers is restricted, and while
`Content-Length` is enabled by default, `Content-Encoding` is not.

This results in the impossibility of knowing if the content was
compressed, unless the server explicitly enabled the encoding header
via `Access-Control-Expose-Headers`.

To keep maximum compatibility we must disable `body_size` completely.

(cherry picked from commit 737ed0f66e)
2021-04-05 11:59:38 +02:00
lucicam 1cd13d22c2
Fix crash caused by null parameter passed to CameraServer.add_feed()
Fixes #46181

CameraServer.add_feed() takes a CameraFeed object type as parameter.
Passing in another type of data while binding the method it will make
tha parameter null.
Added a check for null which returns from function and does not make the
engine crash anymore.

(cherry picked from commit c158a63a8a)
2021-04-05 11:58:48 +02:00