Commit graph

66101 commits

Author SHA1 Message Date
Rémi Verschelde 7805220fef
Merge pull request #90134 from AThousandShips/construct_fix
[Core] Fix `Variant::construct` of `Object`
2024-07-26 13:43:54 +02:00
Rémi Verschelde 2a61a2fa2f
Merge pull request #89274 from 0x0ACB/unchecked_cast
Fix use after free in `GDScriptLanguage::debug_get_globals`
2024-07-26 13:43:48 +02:00
Fabio Alessandrelli 96feb924e8 [Web] Enable the closure compiler in CI
Also fixes some JSDoc annotations in GodotAudio
2024-07-26 13:27:52 +02:00
Thad Guidry 1ea55ae075
Add link to notification docs in SceneTree docs 2024-07-26 13:26:26 +02:00
Fabio Alessandrelli 26f17c33a5 [Web] Add workaround for missing export in threaded builds
The offending symbol gets stripped away by wasm-dce but it's used on the
JavaScript side and causes and undefined symbol which also causes the
closure compiler to throw an error.
2024-07-26 12:28:36 +02:00
jsjtxietian 3be7aaa624 Update shader list after save gdshaderinc file 2024-07-26 18:07:00 +08:00
Riteo 755dbde873 Apply prefer_wayland only if no display driver is set
Before this patch any other display driver preference would be
overridden.
2024-07-26 07:29:34 +02:00
jsjtxietian 38fad35356 Fix editor crash when shader has incorrect global array declaration 2024-07-26 11:53:11 +08:00
Silc Lizard (Tokage) Renew b075eba68c Fix BlendShapeTrack insertion totally not working 2024-07-25 23:52:31 +09:00
Aitor Guevara 21f3e69a24 [Windows] Use default aggregate initialization for NVAPI settings
Using the member initialization encouraged in NVAPI documentation for
NVDRS_SETTING results in builds enabling `dev_mode` breaking. Default
aggregate initialization results in a clean build though.
2024-07-25 14:41:46 +02:00
A Thousand Ships 8f3e2c96eb
[Core] Fix Variant::construct of Object
Variant type was not updated correctly causing leaks in ref-counted
2024-07-25 12:25:29 +02:00
alvinhochun 24e02d56cb
Remove unneeded call in DisplayServerX11
X11 does not need setting exclusive flag (it is not implemented).

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2024-07-25 17:11:15 +08:00
Danil Alexeev 5350e1beaa
GDScript: Fix locals clearing after exiting while block 2024-07-25 12:10:37 +03:00
Yuri Rubinsky 02a6f3944a Fix incorrect passing of parameter to visual shader preview 2024-07-25 11:54:22 +03:00
Rémi Verschelde e343dbbcc1
Merge pull request #94723 from akien-mga/revert-94617
Some checks failed
🔗 GHA / 📊 Static checks (push) Failing after 19m14s
🔗 GHA / 🪲 Godot CPP (push) Has been skipped
🔗 GHA / 🌐 Web (push) Has been skipped
🔗 GHA / 🏁 Windows (push) Has been skipped
🔗 GHA / 🍎 macOS (push) Has been skipped
🔗 GHA / 🐧 Linux (push) Has been skipped
🔗 GHA / 🍏 iOS (push) Has been skipped
🔗 GHA / 🤖 Android (push) Has been skipped
Revert "GDScript: Fix common mismatched external parser errors"
2024-07-25 10:22:12 +02:00
Rémi Verschelde 0b26cc1c39
Merge pull request #94722 from TokageItLab/total-weight-vector-type
AnimationMixer: Fix `processed_hashes` type to `Animation::TypeHash` instead of `int`
2024-07-25 10:22:06 +02:00
Silc Lizard (Tokage) Renew 7c4bc0a378 Fix processed_hashes type to Animation::TypeHash from int 2024-07-25 16:21:59 +09:00
Rémi Verschelde f2918c73cf
Revert "GDScript: Fix common mismatched external parser errors"
This reverts commit c75225ffb2.

This caused a crashing regression for multiple users:
https://github.com/godotengine/godot/pull/94617#issuecomment-2247868580
2024-07-25 09:20:23 +02:00
Rémi Verschelde f0e20efb33
Merge pull request #94716 from TokageItLab/fix-total-weight
Fix total weight calculation to separate track types
2024-07-25 09:15:15 +02:00
Rémi Verschelde e1cf9fddba
Merge pull request #94702 from Calinou/doc-editorsettings-update-spinner-no-visible-redraw
Document update spinner never displaying with `--debug-canvas-item-redraw`
2024-07-25 09:15:12 +02:00
Rémi Verschelde 73bcfec23a
Merge pull request #94621 from Giganzo/scroll-container-rtl-fix
ScrollContainer: Fix RTL on follow focus
2024-07-25 09:15:06 +02:00
Silc Lizard (Tokage) Renew 04ac6a74df Fix total weight calculation to separate track types 2024-07-25 11:23:15 +09:00
Rémi Verschelde 2f2d1a7e68
Merge pull request #94708 from BlueCube3310/rd-cubemap-layer-amount-correct
Some checks are pending
🔗 GHA / 🪲 Godot CPP (push) Blocked by required conditions
🔗 GHA / 🌐 Web (push) Blocked by required conditions
🔗 GHA / 🏁 Windows (push) Blocked by required conditions
🔗 GHA / 🍎 macOS (push) Blocked by required conditions
🔗 GHA / 🐧 Linux (push) Blocked by required conditions
🔗 GHA / 🍏 iOS (push) Blocked by required conditions
🔗 GHA / 🤖 Android (push) Blocked by required conditions
🔗 GHA / 📊 Static checks (push) Waiting to run
RenderingDevice: Use correct layer count for Cubemaps during boundary checks
2024-07-24 22:58:03 +02:00
Rémi Verschelde ab80e564b2
Merge pull request #94661 from m4gr3d/fix_android_render_thread_cleanup
Fix the cleanup logic for the Android render thread
2024-07-24 22:57:06 +02:00
Rémi Verschelde d3427dcd0f
Merge pull request #94707 from clayjohn/GLES3-linear-modulate
Some checks are pending
🔗 GHA / 🪲 Godot CPP (push) Blocked by required conditions
🔗 GHA / 🌐 Web (push) Blocked by required conditions
🔗 GHA / 🏁 Windows (push) Blocked by required conditions
🔗 GHA / 🍎 macOS (push) Blocked by required conditions
🔗 GHA / 🐧 Linux (push) Blocked by required conditions
🔗 GHA / 🍏 iOS (push) Blocked by required conditions
🔗 GHA / 🤖 Android (push) Blocked by required conditions
🔗 GHA / 📊 Static checks (push) Waiting to run
Remove linearization of canvas modulate in GLES3 backend
2024-07-24 21:13:16 +02:00
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
Some checks are pending
🔗 GHA / 🪲 Godot CPP (push) Blocked by required conditions
🔗 GHA / 🌐 Web (push) Blocked by required conditions
🔗 GHA / 🏁 Windows (push) Blocked by required conditions
🔗 GHA / 🍎 macOS (push) Blocked by required conditions
🔗 GHA / 🐧 Linux (push) Blocked by required conditions
🔗 GHA / 🍏 iOS (push) Blocked by required conditions
🔗 GHA / 🤖 Android (push) Blocked by required conditions
🔗 GHA / 📊 Static checks (push) Waiting to run
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
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