Commit graph

35501 commits

Author SHA1 Message Date
Bastien JAUNY
d214867a7e
Fix unitialized variables in core 2024-01-05 11:47:46 +01:00
Micky
1dee97a842 [3.x] Rewrite most of Resource's documentation 2024-01-05 11:36:02 +01:00
Rémi Verschelde
e653473646
Merge pull request #86725 from Mickeon/3-x-remove-unused
[3.x] Remove unused struct in GradientTexture1D
2024-01-05 11:07:44 +01:00
Rémi Verschelde
fd93036834
Merge pull request #86466 from andy-noisyduck/csharp-transform2d-operator-fix
[3.x] C#: Fix incorrect `Rect2` sizing when using the `Transform2D` `*` operator.
2024-01-05 11:07:19 +01:00
Rémi Verschelde
2b7e00f601
Merge pull request #86380 from m4gr3d/update_render_thread_paused_timing_3x
[3.x] Android: Update the logic used to start / stop the GL thread
2024-01-05 11:06:57 +01:00
Rémi Verschelde
f37ff9e254
Merge pull request #79123 from dalexeev/3.x-gds-prevent-native-class-shadowing
[3.x] GDScript: Prevent native class shadowing
2024-01-05 11:06:31 +01:00
Bartłomiej T. Listwon
73793ab89c Prevent shuffling custom shader functions (shader cache requires determinism) 2024-01-03 13:12:48 +01:00
Andy Savage
05624ddbc8 Fix incorrect Rect2 size when Transform2D * operator. 2023-12-23 02:39:07 +00:00
Fredia Huya-Kouadio
194452bf38 Update the logic used to start / stop the GL thread
Currently the GL thread is started / stopped when the activity is respectively resumed / paused. However, according to the `GLSurfaceView` documentation, this should be done instead when the activity is started / stopped, so this change updates the start / stop logic for the GL thread to match the documentation.
2023-12-20 20:38:34 -08:00
Rémi Verschelde
4c4cb12e38
Merge pull request #84409 from m4gr3d/add_android_gestures_project_settings
[3.x] Add Android project settings for gesture support
2023-12-13 13:24:35 +01:00
Rémi Verschelde
96bc1dc469
Merge pull request #79376 from kleonc/tiles-editor-tooltips
[3.x] Improve `TileMap` editor visible names and tooltips
2023-12-13 13:24:27 +01:00
Rémi Verschelde
2ae9c57a0e
Merge pull request #86040 from lawnjelly/new_batch_warning
[3.x] Workaround GCC warning in `rasterizer_canvas_batcher`
2023-12-11 20:02:11 +01:00
Rémi Verschelde
1fe73d4feb
Merge pull request #85917 from akien-mga/3.x-fix-Wtype-limits-gcc-arm64
[3.x] Fix various GCC 13 warnings
2023-12-11 20:02:09 +01:00
Rémi Verschelde
51732690e6
Merge pull request #85916 from akien-mga/gdnative-fix-linux-arm64-sysv_abi-attribute-warning
[3.x] GDNative: Fix Linux arm64 warning about ignored `sysv_abi` attribute
2023-12-11 20:02:06 +01:00
Rémi Verschelde
4bb21d3d83
Merge pull request #85915 from akien-mga/3.x-fix-linux-arm64-theora-libvpx
[3.x] SCons: Fix Linux arm64 build for theora and libvpx
2023-12-11 20:02:03 +01:00
lawnjelly
64ab7488db Workaround GCC warning in rasterizer_canvas_batcher
`-Werror=array-bounds` flags when creating a new batch, possibly due to the possibility of the malloc failing (out of memory).
This PR adds an explicit `CRASHNOW` in the hope the compiler will recognise this case is not intended to be recoverable.
2023-12-11 17:45:30 +00:00
Rémi Verschelde
6b28d93bbc
Merge pull request #85827 from timothyqiu/dnd-3
[3.x] Allow dragging editable children
2023-12-08 15:43:17 +01:00
Rémi Verschelde
ee883cea40
Merge pull request #85521 from dsnopek/webxr-fix-ar-position-godot3
[3.x] Fix touch events in WebXR with an "immersive-ar" session
2023-12-08 15:42:53 +01:00
Rémi Verschelde
7d14dbf11f
Merge pull request #85230 from ztc0611/3.x-fix-ios-get-refreshrate
[3.x] [iOS] Make `OSIPhone::get_screen_refresh_rate` respect iOS Low Power Mode
2023-12-08 15:42:29 +01:00
Rémi Verschelde
73328c8fc2
Merge pull request #84978 from Calinou/scons-web-platform-alias-3.x
[3.x] Alias `platform=web` SCons option to `platform=javascript`
2023-12-08 15:42:03 +01:00
Rémi Verschelde
bfc4baa289
Merge pull request #84934 from Faless/fix/file_get_buffer
[3.x] [Core] Fix `File.get_buffer` returning wrong length
2023-12-08 15:41:39 +01:00
Rémi Verschelde
619c15e88c
Merge pull request #82023 from aaronfranke/3.x-position
[3.x] Add "position" as an alias for "translation" in Spatial
2023-12-08 15:41:12 +01:00
Rémi Verschelde
02e4e208ef
Fix various GCC 13 warnings
Fixes occurrences of `-Wtype-limits`, `-Wmaybe-uninitialized`,
`-Wduplicated-branches`.
2023-12-08 15:32:59 +01:00
Rémi Verschelde
52b32ed533
GDNative: Fix Linux arm64 warning about ignored sysv_abi attribute
Fixes #41160.
2023-12-08 13:16:03 +01:00
Rémi Verschelde
5b8a1314bd
SCons: Fix Linux arm64 build for theora and libvpx
The architecture handling in 3.x is all over the place, and I'm not
going to start a major refactor like I did for 4.0 so late in its life
cycle.

So let's add more hacks! ⚔️

This requires manually passing `arch=arm64` when compiling, but this is
already the case for other parts of the codebase.
2023-12-08 12:56:52 +01:00
Filipe Rinaldi
45c76995dd
Fix arm64 build when using Clang
The commit b5a8055b5c should target GCC builds only as
-flax-vector-conversions has different behaviour in Clang and is
currently making the build fail.

Signed-off-by: Filipe Rinaldi <filipe.rinaldi@gmail.com>
(cherry picked from commit 2841144096)
2023-12-08 12:32:51 +01:00
Rémi Verschelde
dede8d384f
embree: Fix Linux ARM64 build with -flax-vector-conversions
This is a change done upstream in the `devel3` branch for 3.13.6:
82ca6b5ccb

They also seem to define it for macOS, but for us it breaks the build...
¯\_(ツ)_/¯

Also change wrong use of CPPFLAGS (pre-processor) where CXXFLAGS (C++)
makes more sense.

(cherry picked from commit b5a8055b5c)
2023-12-08 12:32:14 +01:00
Haoyu Qiu
f32db73cd2 Allow dragging editable children 2023-12-06 16:26:37 +08:00
Aaron Franke
ab9ed3245d
[3.x] Add "position" as an alias for "translation" in Spatial 2023-12-05 17:25:48 -06:00
David Snopek
5ea11fb481 Fix touch events in WebXR with an "immersive-ar" session 2023-11-29 14:54:45 -06:00
Zach Coleman
ffe86eef04 [iOS] Add APP_PAUSED and APP_RESUMED MainLoop notifications 2023-11-22 12:03:53 -05:00
Zach Coleman
f330bea7a0 [3.x] Make OSIPhone::get_screen_refresh_rate respect iOS Low Power Mode 2023-11-22 11:56:12 -05:00
Hugo Locurcio
4fefb136ea
Backport DirectionalLight fade_start property to 3.x
- Implement shadow fading when using the Orthogonal shadow mode
  (like in `master`).

This allows customizing the distance at which directional shadows
start to fade away. Shadow fading will also always start at the same
distance now, regardless of the current shadow mode in use.

This is useful for enclosed levels to prevent shadows from fading
at all with a well-tuned maximum distance.

The default fade start value (0.8) results in fading happening later
in the distance compared to the previous behavior, where fading started
from the last shadow split distance (0.6 in PSSM 4 Splits and
0.1 in PSSM 2 Splits).
2023-11-20 12:41:55 +01:00
Hugo Locurcio
8f12a01d45
Alias platform=web SCons option to platform=javascript
This makes build scripts forward-compatible, as was already done
for other platforms that were renamed in 4.0.
2023-11-16 15:49:44 +01:00
Rémi Verschelde
e96c42f0e1
Merge pull request #84279 from m4gr3d/update_godot_app_launch_mode_3x
[3.x] Update the `launchMode` for the `GodotApp` activity to allow other activities to be part of the same task
2023-11-15 18:28:18 +01:00
Fabio Alessandrelli
d8ea68d3dd [Core] Fix File.get_buffer returning wrong length
File.get_buffer always returned as many bytes as requested (even when
EOF was reached), this resulted in random bytes being returned when
overflowing.
2023-11-15 12:49:01 +01:00
lawnjelly
8ca631a466 Shadow volume culling and tighter shadow caster culling
Existing shadow caster culling using the BVH takes no account of the camera. This PR adds the highly encapsulated class VisualServerLightCuller which can cut down the casters in the shadow volume to only those which can cast shadows on the camera frustum.

This is used to:
* More accurately defer dirty updates to shadows when the shadow volume does not intersect the camera frustum.
* Tighter cull shadow casters to the view frustum.

Lights dirty state is now automatically managed:
* Continuous (tighter caster culling)
* Static (all casters are rendered)
2023-11-14 14:17:57 +00:00
Rémi Verschelde
e236747b31
Merge pull request #84475 from timothyqiu/3.x-image-links
[3.x] Fix image links to `godot-docs` repository
2023-11-14 11:37:42 +01:00
Rémi Verschelde
6618a2e745
Merge pull request #84415 from m4gr3d/fix_editor_crash_after_backing_from_game_3x
[3.x] Fix Android editor crash issue
2023-11-14 11:37:39 +01:00
Rémi Verschelde
2bbfc379df
Merge pull request #84286 from m4gr3d/auto_set_android_sdk_default_3x
[3.x] Automatically pick the Android sdk path using environment variables
2023-11-14 11:37:36 +01:00
Rémi Verschelde
010f53a0b6
Merge pull request #84115 from Chubercik/item_list_separator_fix
[3.x] Remove the separator from `ItemList`'s thumbnails mode
2023-11-14 11:37:33 +01:00
Rémi Verschelde
42dda76296
Merge pull request #83869 from rarysson/fix-3.x-build
[3.x] Add missing include header to FBXCommon.h
2023-11-14 11:37:30 +01:00
Rémi Verschelde
b40cea8fd4
Merge pull request #83664 from turbohz/fix-error-code-255-version-help
[3.x] Server: Return exit code 0 when running --version or --help
2023-11-14 11:37:27 +01:00
Rémi Verschelde
814400bdd2
Merge pull request #83136 from bruvzg/occ_3x
[3.x] [macOS] Use occlusionState to determine when window is drawable.
2023-11-14 11:37:24 +01:00
Rémi Verschelde
b5081afc55
Merge pull request #83064 from jasonwinterpixel/3.x-gdscript-parser-faster-autoload
[3.x] Optimize GDScript parser for checking if an identifier is an autoload
2023-11-14 11:37:20 +01:00
Rémi Verschelde
00b99bdab3
Merge pull request #83031 from lawnjelly/fix_64bit_glgets
[3.x] Fix glGet overflows by using 64 bit versions
2023-11-14 11:37:16 +01:00
Rémi Verschelde
575399ee38
Merge pull request #82902 from kleonc/sprite-base-3d-gizmo-plugin-3x
[3.x] Make gizmo plugin handle `SpriteBase3D` instead of `Sprite3D`
2023-11-14 11:37:12 +01:00
Rémi Verschelde
1ba1d46740
Merge pull request #81574 from BlueCube3310/3x-dds-grayscale-fix
[3.x] Fix grayscale DDS loading
2023-11-14 11:37:07 +01:00
lawnjelly
ed3d029f5d GLES2 / GLES3 - Use gl_FragColor temporary
On some hardware, modifying gl_FragColor multiple times can cause large performance drops. This PR writes to a standard temporary variable instead, and copies across to gl_FragColor once only at the end of the fragment shader.

This could potentially lead to large gains in performance on affected hardware.
2023-11-07 11:53:25 +00:00
Haoyu Qiu
5302868446 Fix image links to godot-docs repository 2023-11-05 16:53:53 +08:00