Commit Graph

32648 Commits

Author SHA1 Message Date
Haoyu Qiu 8231303dec Backport FlowContainer 2022-02-11 14:48:40 +08:00
Rémi Verschelde 118494db8a
Merge pull request #57940 from Calinou/bullet-tweak-kinematic-trimesh-warning-message 2022-02-11 00:06:51 +01:00
Rémi Verschelde c7f09c1318
Merge pull request #57900 from timothyqiu/canvas-layer-visible 2022-02-10 22:48:05 +01:00
Hugo Locurcio e7934661da
Tweak the Bullet RigidBody kinematic trimesh warning message
This makes it clearer that primitive or convex shapes must be
used instead.
2022-02-10 22:28:32 +01:00
Rémi Verschelde 77196d4c43
Merge pull request #57903 from aaronfranke/3.x-canvas-editor-scale 2022-02-10 22:24:38 +01:00
Haoyu Qiu f49ffe4bb0 Backport CanvasLayer visibility 2022-02-11 01:00:35 +08:00
Rémi Verschelde 0c7c640112
Merge pull request #57643 from YeldhamDev/smarter_pm_focus_port 2022-02-10 16:52:08 +01:00
Rémi Verschelde f50c7f7415
Core: Move generated `VERSION_HASH` to a `.cpp` file
This lets us have its definition in `core/version.h` and avoid
rebuilding a handful of files every time the commit hash changes.

(cherry picked from commit 90162851a7)
2022-02-10 13:06:56 +01:00
Aaron Franke a672f0db17
[3.x] Fix CanvasItemEditor scale editor not using the editor methods 2022-02-10 04:04:53 -06:00
Rémi Verschelde 6dbb67cc73
SCons: Make compilation database generation optional
Saves around 3 s on incremental rebuilds to have it disabled by default.
Can be enabled with `compiledb=yes`.

(cherry picked from commit f94df6fa2b)
2022-02-09 17:36:39 +01:00
Rémi Verschelde ec12e24e18
SCons: Add `fast_unsafe` option for faster rebuilds
This reverts #53828 which had caused a significant drop in incremental
rebuild time for debug builds (from 10s to 23s on my laptop).

The "faster but unsafe" options are re-added, as well as adding
`max_drift=60` which we didn't use previously.

These options speed up SCons' own processing of the codebase to decide
what to build/rebuild (i.e. the first step before actually calling the
compiler). This will therefore not make much difference for scratch
builds, and is mostly useful for incremental rebuilds (including "null"
rebuilds with no change).

These options are enabled automatically for `debug` builds, unless
`fast_unsafe=no` is passed.
They are disabled by default for `release` and `release_debug` builds,
unless `fast_unsafe=yes` is passed.

(cherry picked from commit d4553c5126)
2022-02-09 17:35:55 +01:00
Rémi Verschelde 7244ea7e20
Merge pull request #57864 from nathanfranke/3/focus-exact-match 2022-02-09 17:33:22 +01:00
Nathan Franke c27b05febb
use exact match when checking focus next / previous 2022-02-09 10:18:58 -06:00
Rémi Verschelde 6ea58db2d8
Merge pull request #57851 from vnen/gdscript-infer-type-on-release 2022-02-09 14:05:22 +01:00
Rémi Verschelde 43dfafdfc9
Merge pull request #53296 from lawnjelly/project_settings_dirty_flag 2022-02-09 14:04:45 +01:00
Rémi Verschelde ae08afc43c
Merge pull request #32255 from lawnjelly/android-s3tc2 2022-02-09 13:42:28 +01:00
Rémi Verschelde 40e579a47f
Merge pull request #57844 from Pineapple/vector2-brackets-operator 2022-02-09 13:26:04 +01:00
George Marques a3fe028809
GDScript: Infer variable types on release
Otherwise this creates an inconsistency between debug and release
builds, potentially leading to crashes.
2022-02-09 09:07:18 -03:00
lawnjelly f0af29346b ProjectSettings add dirty flag and project_settings_changed signal
Most frames there will be no change in project settings, and it makes no sense to read settings every frame in case of changes, as a large number of string compares are involved.

This PR adds a signal to ProjectSettings that can be subscribed to in order to keep local settings up to date with ProjectSettings.

In addition a function `ProjectSettings::has_changes()` is provided for objects outside the signal system (e.g. Rasterizers).
2022-02-09 11:20:25 +00:00
Rémi Verschelde 4ed2c8ee08
Merge pull request #57811 from timothyqiu/tree-button-id-3.x 2022-02-09 11:11:26 +01:00
Rémi Verschelde f72753ca0c
Merge pull request #57604 from naithar/fix/godot-view-touch-3.x 2022-02-09 11:05:51 +01:00
lawnjelly b15ad8e786 Fix for S3TC on Android and IOS devices
On some platforms, exporters are prevented from exporting S3TC textures. This causes problems if the .import file contains a reference to such a texture - the exported project will attempt to load the S3TC, fail, and probably crash.

This PR prevents this problem by faking lack of hardware support for S3TC on the affected platforms. This prevents the engine attempting to load the S3TC and avoids the problem.
2022-02-09 08:45:24 +00:00
Bartłomiej T. Listwon 134aac5725 Fix Vector2 and Vector2i coord access via operator[] 2022-02-09 09:18:05 +01:00
Rémi Verschelde a47a71b87e
Merge pull request #57093 from Calinou/editor-help-references-use-code-font-3.x 2022-02-08 18:44:55 +01:00
Haoyu Qiu a3f6033513 Improve TreeItem button API 2022-02-08 23:56:19 +08:00
Rémi Verschelde 7dc00ddae8
Merge pull request #57041 from fire-forge/fix-create-root-node-scrolling-3.x 2022-02-08 13:17:55 +01:00
Rémi Verschelde 69c15c7ab8
Merge pull request #57792 from timothyqiu/raycast-clear-except-3.x 2022-02-08 10:50:27 +01:00
Haoyu Qiu 74a4795fb1 Fix RayCast{,2D}.clear_exceptions clears parent 2022-02-08 16:22:10 +08:00
Rémi Verschelde 5379237177
Merge pull request #57771 from raulsntos/button_icon_alignment_3.x
[3.x] Added alignment options to icons on buttons. They can now be centered and right-aligned.
2022-02-07 22:44:11 +01:00
Raul Santos 1d3de163dc Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Co-authored-by: jitspoe <jitspoe@yahoo.com>
2022-02-07 21:29:37 +01:00
Rémi Verschelde 8acdd0502d
Merge pull request #57737 from winterpixelgames/faster-script-class-get-parent 2022-02-07 18:28:36 +01:00
Rémi Verschelde 49c0c5d6b2
Merge pull request #57753 from Calinou/doc-csg-nodes-performance-3.x 2022-02-07 16:18:31 +01:00
Jason Knight 6f7cef601a Use ScriptServer::get_global_class_base instead of script_class_get_base in script_class_is_parent. 2022-02-07 07:36:59 -06:00
Hugo Locurcio 1b505ef8ca
Document performance limitations with CSG nodes, link to tutorial 2022-02-07 14:01:56 +01:00
Rémi Verschelde a2ee2bdd90
Merge pull request #57485 from Faless/js/3.x_pwa_prefer_cache_pr 2022-02-07 13:21:27 +01:00
Rémi Verschelde 3358b18641
Merge pull request #57728 from kleonc/sprite_frames_editor_fix_loading_non_texture_crash_3x
[3.x] `SpriteFramesEditor` Fix crash when selecting non-`Texture` file for splitting
2022-02-07 08:01:01 +01:00
Rémi Verschelde c590da0527
Merge pull request #57739 from raulsntos/fix-57503-3.x
[3.x] Attach mono thread before getting `nativeName` field
2022-02-07 07:58:29 +01:00
Raul Santos eddb99b9be Attach mono thread before getting nativeName field
In order to access the `nativeName` constant field from a C# class, the
mono scope thread must be attached or the mono domain will be null.
2022-02-07 03:51:40 +01:00
kleonc 87b4db9e63 SpriteFramesEditor Fix crash when selecting non-Texture file for splitting 2022-02-06 23:39:26 +01:00
Fabio Alessandrelli 4c23a902c1 [HTML5] Implement JavaScript PWA update callbacks.
Allows detecting when a new version of the progressive web app service
worker is waiting (i.e. an update is pending), along a function to force
the update and reload all clients.
2022-02-06 18:33:13 +01:00
Fabio Alessandrelli afdfe7c03b [HTML5] Improve editor progressive web app behavior.
Ensures early claim for aggressive caching.
Adds a button to update when it detects a new version asking
confirmation due to the necessary reload.
2022-02-06 18:33:13 +01:00
Fabio Alessandrelli 73f396572a [HTML5] PWA service worker prefers cached version.
Use an offline first approach, where we prefer the cached version over
the network one.
This forces games using PWA to always re-export the project and not just
the PCK, so that the service worker version gets updated correctly, and
the end-user cache is correctly cleared on update.
2022-02-06 18:33:13 +01:00
Rémi Verschelde be50fe7243
Merge pull request #57705 from jeremyz/poly_source_id 2022-02-06 13:44:15 +01:00
Jérémy Zurcher f9fdd526d5 fix portal_occlusion_culler compilation with target=debug tools=no 2022-02-06 13:22:33 +01:00
Rémi Verschelde e898f93129
Merge pull request #57387 from madmiraal/update-mouse-pointer-definitions-3.x
[3.x] Update definitions of get_mouse_position methods
2022-02-06 11:40:25 +01:00
Rémi Verschelde 002e705367
Merge pull request #57688 from The-O-King/ios_half_float_fix
Re-fix Disabling Half Floats on iOS
2022-02-06 11:11:06 +01:00
Marcel Admiraal a4f0e02798 Update definitions of get_mouse_position methods 2022-02-06 09:32:46 +00:00
Omar El Sheikh bf5b2f48e6 Re-fix Disabling Half Floats on iOS
A previous change missed setting a flag that specified whether half
floats were being used on vertex positions when in the GLES2 driver

This caused errors with the vertex buffer when platforms (specifically
iOS) which do not properly support half float vertex attributes on
GLES2, try to remapt the vertex buffer to stop using half floats
(in this case that remapping never happened and caused artifacts)

Re-enable setting that flag to fix rendering issues on these platforms
2022-02-05 21:06:09 -05:00
Rémi Verschelde a086a61aef
Merge pull request #57659 from lawnjelly/error_macros_flush_3
[3.x] Add fflush to error macros
2022-02-05 14:42:22 +01:00
lawnjelly ee979d321a Add fflush to error macros
CRASH_NOW and DEV_ASSERT macros would previously terminate before outputting any error messages.
This PR ensures calling fflush for stdout before terminating.
2022-02-05 12:38:57 +00:00