Commit graph

66509 commits

Author SHA1 Message Date
BlueCube3310
eb3b217777 RenderingDevice: Use the correct amount of layers for Cubemaps for boundary checks 2024-07-24 20:26:46 +02:00
clayjohn
7eac9e855b Remove linearization of canvas modulate in GLES3 backend
The GLES3 renderer is always in sRGB space, even when using an HDR format
2024-07-24 10:27:25 -07:00
Fredia Huya-Kouadio
4d0da74014 Fix the cleanup logic for the Android render thread
On Android the exit logic goes through `Godot#onDestroy()` who attempts to cleanup the engine using the following code:

```
runOnRenderThread {
	GodotLib.ondestroy()
	forceQuit()
}
```

The issue however is that by the time we ran this code, the render thread has already been paused (but not yet destroyed), and thus `GodotLib.ondestroy()` and `forceQuit()` which are scheduled on the render thread are not executed.

To address this, we instead explicitly request the render thread to exit and block until it does. As part of it exit logic, the render thread has been updated to properly destroy and clean the native instance of the Godot engine, resolving the issue.
2024-07-24 10:17:46 -07:00
Alvin Wong
97aa278edb Pass window exclusive and transient properties for subwindow creation
On Windows this allows to avoid having to change the owner of the window
after it has been created, which in rare circumstances may cause the
window to bug out.
2024-07-25 00:27:27 +08:00
Hugo Locurcio
905e060777
Document update spinner never displaying with --debug-canvas-item-redraw 2024-07-24 18:09:08 +02:00
Rémi Verschelde
91eb688e17
Bump version to 4.3-rc 2024-07-24 13:04:22 +02:00
Rémi Verschelde
f724ee530a
Merge pull request #94691 from akien-mga/android-workaround-94416
Android Editor: Disable file reimport when .import changes
2024-07-24 13:03:33 +02:00
Rémi Verschelde
022d702bc0
Merge pull request #94678 from rune-scape/clear-abandoned-parser-refs
GDScriptCache: Clear abandoned parser refs
2024-07-24 13:03:27 +02:00
Rémi Verschelde
7acb61d346
Android Editor: Disable file reimport when .import changes
This is disabling the logic added in #84974 which caused #94416.
That issue still needs to be debugged further, but this works around
the regression and should have minimal usability impact on Android.
2024-07-24 12:07:59 +02:00
Rémi Verschelde
77e18da5ff
Merge pull request #94674 from dalexeev/gds-fix-incorrect-setter-call-for-ref-types
GDScript: Fix incorrect setter call for reference types
2024-07-24 10:17:45 +02:00
Rémi Verschelde
543e4388d5
Merge pull request #94682 from zeux/lod-uv-mirror
Fix LOD generation for meshes with tangents & mirrored UVs
2024-07-24 09:59:45 +02:00
Rémi Verschelde
25e5efaf9e
Merge pull request #94680 from bruvzg/fix_net_detection
Replace .NET detection code with `ClassDB::class_exists("CSharpScript")`.
2024-07-24 09:59:42 +02:00
Rémi Verschelde
693b69d65f
Merge pull request #94677 from bruvzg/no_sign_err
[macOS export] Do not stop export on signing errors.
2024-07-24 09:59:38 +02:00
Rémi Verschelde
d342df79d5
Merge pull request #94676 from rune-scape/test-oops
GDScriptTestRunner: Fix compiler error output
2024-07-24 09:59:34 +02:00
Rémi Verschelde
62c88a4052
Merge pull request #94671 from Chaosus/shader_fix_varying
Fix shader crash when using a varying in separate func before it defined
2024-07-24 09:59:31 +02:00
Rémi Verschelde
f361133601
Merge pull request #94664 from dalexeev/gds-fix-make-arguments-hint
GDScript: Fix incorrect default values ​​in `_make_arguments_hint()`
2024-07-24 09:59:28 +02:00
Rémi Verschelde
139cf025c9
Merge pull request #94629 from RandomShaper/fix_undef_position
Fix position from vertex shader partially uninitialized
2024-07-24 09:59:24 +02:00
Rémi Verschelde
e91725f490
Merge pull request #94617 from rune-scape/fix-mismatched-parsers
GDScript: Fix common mismatched external parser errors
2024-07-24 09:59:19 +02:00
Rémi Verschelde
2966199647
Merge pull request #94554 from TokageItLab/approx-animation-compare
Add approximate comparing static methods to Animation and make Animation code use them
2024-07-24 09:59:15 +02:00
Rémi Verschelde
27daf3b983
Merge pull request #93802 from feiyue-z/Fix-inconsistent-CanvasModulate-color-in-2D-HDR
Fix inconsistent CanvasModulate color in 2D HDR
2024-07-24 09:59:11 +02:00
Rémi Verschelde
7708f0e163
Merge pull request #85382 from HolonProduction/in-case-of-a-script
GDScript: Generate `arghint` for script types
2024-07-24 09:59:08 +02:00
Feiyue Zhang
6f30df4b6a
Linearize color if HDR 2D is on 2024-07-24 09:49:50 +02:00
Danil Alexeev
8c82fd15d2
GDScript: Fix incorrect setter call for reference types 2024-07-24 10:37:35 +03:00
Juan Pablo Arce
8aa444d212 Fix GD0107 not applying to arrays and dictionaries containing nodes 2024-07-24 02:20:29 -03:00
Gergely Kis
723878bbab StringName: Use inline static field definitions
Before this change StringName used regular static field
definitions for its mutex, _table, configured and debug_stringname
fields.

Since in the general case the ordering of the static variable and field
initialization and destruction is undefined, it was possible that
the destruction of StringName's static fields happened prior to
the destruction of statically allocated StringName instances.

By changing the static field definitions to inline in string_name.h,
the C++17 standard guarantees the correct initialization and destruction
ordering.
2024-07-24 02:40:36 +02:00
Arseny Kapoulkine
18d6ae1161 Fix LOD generation for meshes with tangents & mirrored UVs
When UVs are mirrored in a mesh, collapsing vertices across the
mirroring seam can significantly reduce quality in a way that is not
apparent to the simplifier. Even if simplifier was given access to UV
data, the coordinates would need to be weighted very highly to prevent
these collapses, which would penalize overall quality of reasonable
models.

Normally, well behaved models with mirrored UVs have tangent data that
is correctly mirrored, which results in duplicate vertices along the
seam. The simplifier automatically recognizes that seam and preserves
its structure; typically models have few edge loops where UV winding is
flipped so this does not affect simplification quality much.

However, pre-processing for LOD data welded vertices when UVs and
normals were close, which welds these seams and breaks simplification,
creating triangles with distorted UVs.

We now take tangent frame sign into account when the input model has
tangent data, and only weld vertices when the sign is the same.
2024-07-23 16:35:46 -07:00
bruvzg
25f78a5eb6
Replace .NET detection code with ClassDB::class_exists("CSharpScript"). 2024-07-23 23:46:14 +03:00
rune-scape
298904d74e GDScriptTestRunner: Fix compiler error output 2024-07-23 12:59:22 -07:00
rune-scape
86b23d0420 GDScriptCache: Clear abandoned parser refs 2024-07-23 12:54:45 -07:00
bruvzg
c34192eb9c
[macOS export] Do not stop export on signing errors. 2024-07-23 22:38:05 +03:00
rune-scape
c75225ffb2 GDScript: Fix common mismatched external parser errors 2024-07-23 12:25:23 -07:00
Yuri Rubinsky
965b2f6ca4 Fix shader crash when using a varying in separate func before it defined 2024-07-23 21:55:18 +03:00
bruvzg
32bc1c2f33
[Font Import] Detect pixel fonts and disable subpixel positioning. 2024-07-23 20:34:39 +03:00
Danil Alexeev
37a3a98fde
GDScript: Fix incorrect default values ​​in _make_arguments_hint() 2024-07-23 19:35:42 +03:00
Rémi Verschelde
8e36f98ea5
Merge pull request #94662 from akien-mga/android-editor-some-visible-progress
Android Editor: Make progress dialog visible again
2024-07-23 18:22:51 +02:00
Silc Lizard (Tokage) Renew
88e590c9d3 Add approx comparing methods to Animation, use them on time comparison 2024-07-24 01:18:06 +09:00
Rémi Verschelde
2b827f6d5f
Android Editor: Make progress dialog visible again 2024-07-23 17:36:07 +02:00
Rémi Verschelde
18c1c25ca0
Merge pull request #94652 from shana/fix-header-guards
Fix `header_guards.py` so it detects the copyright header properly.
2024-07-23 16:19:15 +02:00
Rémi Verschelde
e4f7b69470
Merge pull request #94656 from BlueCube3310/cubemap-layers-retrieve-fix
RenderingDevice: Fix getting cubemap layer data
2024-07-23 15:55:53 +02:00
Rémi Verschelde
9b7f5f5fa5
Merge pull request #94655 from bruvzg/ffp-contract-2
Disable FP contraction.
2024-07-23 15:55:50 +02:00
Rémi Verschelde
29e1bdee2b
Merge pull request #94653 from mihe/bind-physics-state-sync
Bind `PhysicsServer*D::body_set_state_sync_callback`
2024-07-23 15:55:46 +02:00
Rémi Verschelde
432d15e3f1
Merge pull request #94649 from AeioMuch/fix_wrong_selection
Fix node gets wrongly selected after moving another node in the tree
2024-07-23 15:55:42 +02:00
Rémi Verschelde
adf58849c6
Merge pull request #94645 from jsjtxietian/lightmap-override
Fix newly baked lightmap can't override previously baked at same path
2024-07-23 15:55:39 +02:00
Rémi Verschelde
05504ebf27
Merge pull request #94439 from kitbdev/fix-reopen-hscroll
Fix ScriptEditor scrolling horizontally when reopening script
2024-07-23 15:55:32 +02:00
AeioMuch
393fb68aea
Fix node gets wrongly selected after moving another node in the tree 2024-07-23 15:16:45 +02:00
BlueCube3310
741bb152ae RenderingDevice: Fix getting cubemap data 2024-07-23 13:44:28 +02:00
bruvzg
52a2836861 Disable FP contraction. 2024-07-23 14:33:51 +03:00
Mikael Hermansson
a559a1c6d8 Bind PhysicsServer*D::body_set_state_sync_callback 2024-07-23 13:30:44 +02:00
Rémi Verschelde
f6c7b00a41
Merge pull request #94635 from dalexeev/gds-fix-false-positive-enum-without-default
GDScript: Fix false positive cases of `ENUM_VARIABLE_WITHOUT_DEFAULT`
2024-07-23 13:08:21 +02:00
Rémi Verschelde
ad1955a63d
Merge pull request #94628 from Chaosus/rendering_fix_crash
Fix crash when assigning more textures than expected to texture array
2024-07-23 13:08:18 +02:00