Commit graph

26555 commits

Author SHA1 Message Date
Rémi Verschelde
5d5848d2b1
Merge pull request #38119 from RandomShaper/imvu/new_dangling_variant_fix
Fix dangling Variants (3.2)
2020-04-24 17:59:52 +02:00
Rémi Verschelde
b04f092643
Merge pull request #38141 from neikeq/3.2-fix-collections-marshalling-by-interface
C#: Revert marshalling of IDictionary/IEnumerable implementing types
2020-04-24 17:56:25 +02:00
Rémi Verschelde
e408c61497
Merge pull request #38137 from lawnjelly/kessel_z_lightfix
Fix batching z_indices with z ranged lights
2020-04-24 17:31:55 +02:00
Ignacio Etcheverry
6aca932659 C#: Revert marshalling of IDictionary/IEnumerable implementing types
Added marshalling for `System.Collections.Generic.List<T>` and
`System.Collections.Generic.Dictionary<TKey, TValue>`.
2020-04-23 15:36:01 +02:00
Pedro J. Estébanez
d904d05e65 Fix dangling and reassigned Variants
This commit addresses multiple issues with `Variant`s that point to an `Object`
which is later released, when it's tried to be accessed again.

Formerly, **while running on the debugger the system would check if the instance id was
still valid** to print warnings or return special values. Some cases weren't being
warned about whatsoever.

Also, a newly allocated `Object` could happen to be allocated at the same memory
address of an old one, making cases of use hard to find and having **`Variant`s pointing
to the old one magically reassigned to the new**.

This commit makes the engine realize all these situations **under debugging**
so you can detect and fix them. Running without a debugger attached will still
behave as it always did.

Also the warning messages have been extended and made clearer.

All that said, in the name of performance there's still one possible case of undefined
behavior: in multithreaded scripts there would be a race condition between a thread freeing
an `Object` and another one trying to operate on it. The latter may not realize the
`Object` has been freed soon enough. But that's a case of bad scripting that was never
supported anyway.
2020-04-23 13:51:02 +02:00
lawnjelly
b954a8c099 Fix batching z_indices with z ranged lights
Joining items across z_indices can interfere with light culling for lights which only affect certain z ranges. This PR disables joining across z_indices when lights are present, except specifically for lights with both z_min set to the global minimum (-4096) and z_max set to the global maximum (4096).

In addition, the z_index is now stored on the joined_item for accurate light culling. The z_index is also displayed in frame diagnostics.
2020-04-23 11:58:06 +01:00
Pedro J. Estébanez
07c4dc1b30 Avoid invocation to Object's copy constructor
Needed for the next commit. That's the only place in all the Godot code base
where that's attempted and it's not needed because Objects are not meant to
be copied that way.
2020-04-23 12:44:47 +02:00
Rémi Verschelde
ed27b7e6b9
Merge pull request #38131 from akien-mga/3.2-cherrypicks
Cherry-picks for the 3.2 branch (future 3.2.2) - 3rd batch
2020-04-23 12:43:10 +02:00
Ignacio Etcheverry
dfdb7bdc87 Mono/C#: Fix assemblies being reloaded a second time unnecesarily
(cherry picked from commit c9882e61e2)
2020-04-23 11:34:42 +02:00
Ignacio Etcheverry
cf729f2111 Mono/C#: Allow exporting System.Array of type Godot.Object
(cherry picked from commit 0fec3cb5ed)
2020-04-23 11:17:23 +02:00
Ignacio Etcheverry
317d8decad Mono/C#: Allow debugging exported games
- Include PDB files in exported games.
- Release export templates also allow debugging now.

Right now the only way to enable debugging in exported games is with the  environment variables, which may be cumbersome or not even possible on some platforms.

(cherry picked from commit 71fc87e101)
2020-04-23 11:15:35 +02:00
Ignacio Etcheverry
08f41f474b C#: Save copy of sln and csproj before applying fixes
(cherry picked from commit 93d7ec8836)
2020-04-23 11:14:57 +02:00
dankan1890
a5bbd13794 Fixed output prints " Signal 'node_removed' is already connected " when the editor settings window is closed.
Close #38012

(cherry picked from commit ef08e64afb)
2020-04-23 11:13:33 +02:00
volzhs
f670f6e351 Emit signal when animation ends by seek
(cherry picked from commit bf1cc116e1)
2020-04-23 11:11:13 +02:00
Thakee Nathees
95f6bdfa78 GDScript class name existance check enhanced
(cherry picked from commit 62280c3d47)
2020-04-23 11:10:51 +02:00
Thakee Nathees
12c776dba3 line unsafe for indexing with known base type & unkown identifier
(cherry picked from commit 0780ad2800)
2020-04-23 11:10:28 +02:00
Stoofin
243711e77f Pattern bind counts as assignment
Fixes #34697

(cherry picked from commit 44281f233d)
2020-04-23 11:10:06 +02:00
Fredia Huya-Kouadio
17ad99c206 Fix Android templates size regression
The issue was caused by PR #36906 which changes prevented the generated shared libraries from being stripped.
Since the change is only needed for development (debugging) purposes, it's commented out by default.

(cherry picked from commit 2f38cfd9ab)
2020-04-23 11:08:46 +02:00
jfons
add8d1b9df Update Joint gizmos automatically
(cherry picked from commit 3e77b6d49d)
2020-04-23 11:07:32 +02:00
Pedro J. Estébanez
97a787aa71 Fix compilation of jpgd.cpp on MSVC 2017
(cherry picked from commit 1e5a93a416)
2020-04-23 10:36:06 +02:00
Rémi Verschelde
3b44f34166
Merge pull request #38114 from lawnjelly/kessel_rulerfix
Fix batch translate to colored synchronization error
2020-04-22 21:42:00 +02:00
lawnjelly
54cd6d3077 Fix batch translate to colored synchronization error
In rare circumstances default batches were being joined incorrectly, causing visual regressions. This logic has been fixed.

In addition slightly more output information has been added to frame diagnosis mode.
2020-04-22 18:52:42 +01:00
Rémi Verschelde
ade57c4bf0
Merge pull request #38099 from clayjohn/GLES2-skeleton-rebind
Rebind material when skeleton changes in GLES2
2020-04-22 08:23:43 +02:00
clayjohn
6f322af3fb Rebind material when skeleton changes in GLES2 2020-04-21 17:46:40 -07:00
Rémi Verschelde
c7ad8f539b jpgd: Upgrade to upstream 2.00, fuzzed with zzuf and afl
(cherry picked from commit c842ddcf76)
2020-04-21 14:16:28 +02:00
Rémi Verschelde
4b33388e5c mbedtls: Update to upstream version 2.16.6
Fixes https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2020-04

(cherry picked from commit 6b00357d53)
2020-04-21 14:16:03 +02:00
clayjohn
7fc2cba47d Use proper depth buffer format for rgba shadows
(cherry picked from commit 123dd390e4)
2020-04-21 14:15:49 +02:00
Rémi Verschelde
253fc093b8 DocData: Skip unexposed classes
Properly expose classes that we actually want accessible.

(cherry picked from commit 0ef8bcac4d)
2020-04-21 14:15:34 +02:00
Vasiliy Makarov
982dee67f0 Fix square image resize
Fixes #37980

(cherry picked from commit d45e8734d1)
2020-04-21 14:11:43 +02:00
Hugo Locurcio
469f398e70 Document how to workaround UI anchor issues when using BackBufferCopy
This closes #6880.

(cherry picked from commit f8a413bb1f)
2020-04-21 14:11:29 +02:00
Hugo Locurcio
e8ead37725 Check for errors when saving in the ResourceSaver example documentation
This also replaces a non-breaking space that was accidentally added in
the EditorFeatureProfile documentation.

This closes #31393.

(cherry picked from commit 2f46f1e7b1)
2020-04-21 14:11:15 +02:00
Hugo Locurcio
3a2cdf7d5b Improve the VisibilityEnabler and VisibilityNotifier documentations
This closes #4803.

(cherry picked from commit 7f2d602106)
2020-04-21 14:10:50 +02:00
Rémi Verschelde
faf858fe41 Revert "Made possible to specify where to dump the contents when loading a ".pck" file"
This reverts commit ffcfd9c8ea.

This was not so useful as is due to the way dependency paths are stored
in scenes and resources.
2020-04-20 13:48:02 +02:00
Dominik 'dreamsComeTrue' Jasiński
ac0a55ce75 Update TextEdit docs - explaining 'override_selected_font_color' role
(cherry picked from commit 6a0e6c2852)
2020-04-20 11:55:47 +02:00
Marcel Admiraal
339c10889d Correct the addition of a key and the duplication of a variable name
in Dictionary class documentation.

(cherry picked from commit 4d41535fa3)
2020-04-20 11:55:31 +02:00
Hugo Locurcio
4e73fcc959 Document DynamicFont limitations and a possible workaround
This closes #30014.

(cherry picked from commit 46b8e108e2)
2020-04-20 11:55:04 +02:00
Hugo Locurcio
4f7296a869 Document image size limits
This closes #30238.

(cherry picked from commit 5497cec7a1)
2020-04-20 11:54:47 +02:00
Hugo Locurcio
bb753aaf17 Clarify that angles must be specified as radians in the documentation
This closes #36356.

(cherry picked from commit cae5260dab)
2020-04-20 11:53:40 +02:00
Andrea Catania
4a6f2b8af6 Activate Physics Process in SpringArm3D.
(cherry picked from commit 152303bf51)
2020-04-20 11:51:30 +02:00
Rémi Verschelde
2a10e30119
Merge pull request #38019 from lawnjelly/kessel_zindex_batchbreak
Fixes incorrectly joining batch items from earlier z_index layers
2020-04-19 21:38:33 +02:00
lawnjelly
a9ae0fac86 Fixes incorrectly joining batch items from earlier z_index layers
Batching across z_index layers was not preserving the batch_break flag, which determines whether to not join the previous item. This is fixed by storing the flag in RenderItemState and preserving it across canvas_render_items calls.
2020-04-19 19:32:14 +01:00
Rémi Verschelde
cb1366f006 Mono: Fix include for Android support
This was a typo in #37153.

Co-authored-by: Ignacio Etcheverry <ignalfonsore@gmail.com>
(cherry picked from commit 408fab8442)
2020-04-18 22:02:07 +02:00
Rémi Verschelde
50582446ad Sync classref with current source 2020-04-17 13:43:43 +02:00
Rémi Verschelde
a54a7542c9 Update AUTHORS and DONORS list
New contributors added to AUTHORS:
@dreamsComeTrue, @kuruk-mm, @lawnjelly, @ThakeeNathees

Thanks to all contributors and donors for making Godot possible!

(cherry picked from commit 74d60328f8)
2020-04-17 13:41:43 +02:00
Michael Alexsander
ffcfd9c8ea Made possible to specify where to dump the contents when loading a ".pck" file
(cherry picked from commit 3c261e0dfa)
2020-04-17 13:00:52 +02:00
Rémi Verschelde
008e0748c1
Merge pull request #37349 from lawnjelly/kessel32_1
GLES2 2d Batch rendering (across items)
2020-04-17 12:55:33 +02:00
Rémi Verschelde
1ef94ad445
Merge pull request #37948 from m4gr3d/fix_compilation_issue
Fix 3.2 compilation issue
2020-04-17 12:51:21 +02:00
lawnjelly
72adefa5cf Add frame diagnostics for GLES2 Batch renderer
Added project setting to enable / disable print frame diagnostics every 10 seconds. This prints out a list of batches and info, which is useful to optimize games and identify performance problems.
2020-04-17 08:54:33 +01:00
Fredia Huya-Kouadio
b7fa9cf8ff Fix compilation issue by updating a call to runOnGLThread that was missed by PR #37175 2020-04-16 16:16:24 -07:00
Rémi Verschelde
529daebe07
Merge pull request #37775 from asheraryam/node-unselected-3.2
Add "node_unselected" signal for GraphEdit **[3.2]**
2020-04-17 00:10:21 +02:00