Commit graph

1411 commits

Author SHA1 Message Date
bruvzg
3009073b39 [Resource Loader] Do not check property type for non registered properties. 2024-09-10 11:27:16 +03:00
Fredia Huya-Kouadio
9dc0543da7 Improve support for XR projects 2024-09-06 00:35:50 -07:00
Rémi Verschelde
d8e2a2b860
Merge pull request #95005 from jsjtxietian/export-proj
Fix crash or unclear messages when exporting with invalid arguments
2024-09-05 17:44:07 +02:00
jsjtxietian
1d09970404 Fixes godot crash or give unclear message when exporting with invalid args 2024-09-05 17:56:54 +08:00
Rémi Verschelde
8eff04192b
Merge pull request #91780 from Riteo/falling-with-style
Improve UX when falling back between Display Servers
2024-09-04 11:16:08 +02:00
bruvzg
c273786758
Update rendering driver name on fallbacks. Fix rendering driver/method in the editor system info. 2024-09-01 18:22:40 +03:00
Rémi Verschelde
8186fabc8f
Merge pull request #96197 from jsjtxietian/splash-msg
Improve error message when loading non-PNG splash image
2024-08-29 10:36:38 +02:00
jsjtxietian
c7a0e39af1 Add is png check and better err msg when loading splash imgae 2024-08-29 10:49:04 +08:00
Rémi Verschelde
1e41bf6a08
Merge pull request #93746 from KoBeWi/by_extension
Allow more image types for some project settings
2024-08-28 00:11:20 +02:00
Bastiaan Olij
08ffa5d89e Add support for the debug utils extension in OpenXR 2024-08-27 12:07:01 +10:00
Rémi Verschelde
b34aa7b44d
Merge pull request #76085 from spanzeri/better_remember_editor_window
Remember editor window mode, screen, size and position on restart
2024-08-26 23:27:55 +02:00
Rémi Verschelde
e53dc80f2f
Merge pull request #95777 from Calinou/command-line-improve-rendering-driver-method-error-messages
Improve error messages for invalid rendering drivers/methods on the command line
2024-08-26 10:51:35 +02:00
Matias N. Goldberg
59d0422dcd Disable extra memory tracking by default
PR #90993 added several debugging utilities.

Among them, advanced memory tracking through the use of custom
allocators and VK_EXT_device_memory_report.

However as issue #95967 reveals, it is dangerous to leave it on by
default because drivers (or even the Vulkan loader) can too easily
accidentally break custom allocators by allocating memory through std
malloc but then request us to deallocate it (or viceversa).

This PR fixes the following problems:
 - Adds --extra-gpu-memory-tracking cmd line argument
 - Adds missing enum entries to
RenderingContextDriverVulkan::VkTrackedObjectType
 - Adds RenderingDevice::get_driver_and_device_memory_report
    - GDScript users can easily check via print(
RenderingServer.get_rendering_device().get_driver_and_device_memory_report()
)
- Uses get_driver_and_device_memory_report on device lost for appending
further info.

Fixes #95967
2024-08-24 20:52:39 -03:00
Riteo
56eb272e90 Warn when falling back to another DisplayServer
Before it was a bit unclear on what was happening, since a display
server has to fail to fall back and so the user would be left with an
error _and_ a (hopefully) running game.

Should make the experience more pleasant on Linux/BSD now that we have
two display servers.
2024-08-21 06:31:19 +02:00
Stuart Carnie
2d0165574d
Add Metal support for macOS (arm64) and iOS 2024-08-20 12:11:06 +02:00
Bastiaan Olij
a8c5117777 Change hand tracking project settings and finetune show_when_tracked 2024-08-20 11:12:52 +10:00
Hugo Locurcio
a2043f124d
Improve error messages for invalid rendering drivers/methods on the command line
- Deduplicate rendering driver names.
- Tweak grammar and punctuation to be consistent across both messages.
- Use "rendering method" terminology in the relevant error message.

Preview:

`--rendering-driver unknown`:

    Unknown rendering driver 'unknown', aborting.
    Valid options are 'vulkan', 'opengl3', 'opengl3_es' and 'dummy'.

`--rendering-method unknown`:

    Unknown rendering method 'unknown', aborting.
    Valid options are 'forward_plus', 'mobile' and 'gl_compatibility'.
2024-08-18 23:57:54 +02:00
Rémi Verschelde
1bd740d18d
Merge pull request #95656 from anvilfolk/gdscript-docs-quit
Fix Godot not quitting with `--doctool --gdscript-docs`.
2024-08-17 00:47:17 +02:00
ocean
13b20820ba Fix Godot not quitting with --doctool --gdscript-docs. 2024-08-16 18:18:45 -04:00
Rémi Verschelde
82adfebcf8
Merge pull request #94799 from m4gr3d/memory_allocation_cleanup_and_optimizations
Android memory cleanup and optimizations
2024-08-16 23:45:39 +02:00
Rémi Verschelde
dbf4be308c
Merge pull request #93583 from smix8/obstacle_monitor
Add navigation obstacles to performance monitor stats
2024-08-16 23:45:10 +02:00
Fredia Huya-Kouadio
a57a99f5bc Memory cleanup and optimizations
- Returns an empty list when there's not registered plugins, thus preventing the creation of spurious iterator objects

- Inline `Godot#getRotatedValues(...)` given it only had a single caller. This allows to remove the allocation of a float array on each call and replace it with float variables

- Disable sensor events by default. Sensor events can fired at 10-100s Hz taking cpu and memory resources. Now the use of sensor data is behind a project setting allowing projects that have use of it to enable it, while other projects don't pay the cost for a feature they don't use

- Create a pool of specialized input `Runnable` objects to prevent spurious, unbounded `Runnable` allocations

- Disable showing the boot logo for Android XR projects

- Delete locale references of jni strings
2024-08-16 09:27:41 -07:00
Rémi Verschelde
f01e052162
Merge pull request #95549 from timothyqiu/split-translation-server
Split `TranslationServer` into its own file
2024-08-16 14:36:16 +02:00
Rémi Verschelde
a88b828eb0
Merge pull request #95513 from bruvzg/ds_init_cleanup
Run cleanup code on DisplayServer init failure to prevent crash on exit.
2024-08-16 14:35:26 +02:00
Rémi Verschelde
1d4303c1fe
Merge pull request #95502 from bruvzg/net_ext_detect
[.NET] Move search in files extension list definition to be after Scene level module init.
2024-08-16 14:35:12 +02:00
Rémi Verschelde
28c92bd8ca
Merge pull request #95520 from bruvzg/angle_gen7and8
[Windows] Add Intel Gen7.5/Gen8/Gen9 GPUs to Angle blocklist.
2024-08-16 10:36:39 +02:00
Rémi Verschelde
46c6865979
Merge pull request #92391 from rburing/fti_3d
Physics interpolation (3D)
2024-08-16 10:33:37 +02:00
bruvzg
d222921f06
[Windows] Add Intel Gen7.5/Gen8/Gen9 GPUs to Angle blocklist. 2024-08-15 23:13:49 +03:00
Haoyu Qiu
7343dc3a5d Split TranslationServer into its own file 2024-08-15 15:00:47 +08:00
bruvzg
f15ad72355
Run cleanup code on DisplayServer init failure to prevent crash on exit. 2024-08-14 11:36:29 +03:00
bruvzg
69d52ed081
[.NET] Move search in files extension list definition to be after Scene level module init. 2024-08-14 00:16:09 +03:00
Rémi Verschelde
9a8f18b9bf
Merge pull request #94796 from kus04e4ek/backfall
Windows: Fall back to D3D12 if Vulkan is not supported and vice versa
2024-07-29 15:17:26 +02:00
Kusok
d30c1e6a8f Fall back to D3D12 if Vulkan is not supported and vice versa 2024-07-27 16:17:20 +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
Samuele Panzeri
d0bcac8197 Remember editor window mode, screen, size and position on restart 2024-07-23 00:32:12 +02:00
Rémi Verschelde
84af5c1c46
Merge pull request #88065 from Riteo/ds-pref-consistent
Handle display driver preferences consistently between editor and projects
2024-07-22 17:30:21 +02:00
Alvin Wong
baf1cdabd1 End benchmark of Main::Setup properly before calling setup2 2024-07-21 21:46:01 +08:00
Rémi Verschelde
f649112dfc
Merge pull request #94116 from bruvzg/ed_quit_unload
[Editor] Unload addons when using `--import` or `--quit`.
2024-07-19 11:10:37 +02:00
Rémi Verschelde
1e81a946cc
Merge pull request #94412 from dsnopek/xr-always-render
Always render when XR is enabled, even if no OS windows can draw
2024-07-18 15:38:14 +02:00
David Snopek
7a5a8597eb Always render when XR is enabled, even if no OS windows can draw 2024-07-17 08:19:21 -05:00
Rémi Verschelde
fe427ff203
Merge pull request #94404 from clayjohn/android-clear-color
Restore default clear color after displaying boot splash
2024-07-17 11:44:23 +02:00
Rémi Verschelde
496fd12b17
Merge pull request #94052 from m4gr3d/clean_input_dispatch_settings
Cleanup Android input on render thread settings
2024-07-17 11:42:52 +02:00
clayjohn
999c7e0392 Restore default clear color after displaying boot splash
On Android the boot splash can be shown at a different time, so the clear color restore needs to happen within the `setup_boot_logo` function
2024-07-15 14:00:05 -07:00
Yuri Rubinsky
af5fc8354b Fix a bunch of orphan StringName errors at ProjectSettings/Editor exit 2024-07-09 19:38:52 +03:00
Fredia Huya-Kouadio
5e59819727 Cleanup Android input on render thread settings
Follow up to https://github.com/godotengine/godot/pull/93933
Clean up the set of settings use to control whether Android input should be dispatched on the render thread.

Addresses comments in https://github.com/godotengine/godot/pull/93933#issuecomment-2210437977
2024-07-09 09:15:18 -07:00
bruvzg
c151c7dce0
[Editor] Unload addons when using --import or --quit. 2024-07-09 09:54:41 +03:00
Ricardo Buring
2f8ab4a654 Fixed Timestep Interpolation (3D)
Adds 3D fixed timestep interpolation to the rendering server.
This does not yet include support for multimeshes or particles.

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-07-07 22:15:23 +02:00
Ricardo Buring
23521635d2 Fix physics tick counter
The counter is now incremented at the start of a physics tick rather than at the end.

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-07-07 19:04:05 +02:00
Fredia Huya-Kouadio
6b6428d779 Fix ANRs reported by the Google Play Console
- Add support for dispatching input on the render thread (UI thread is the current default) when `input_buffering` and `accumulated_input` are disabled. At the expense of latency, this helps prevent 'heavy' applications / games from blocking the UI thread (the default behavior)  which may cause the application to ANR.

- Remove GLSurfaceView logic causing the UI thread to wait on the GL thread during lifecycle events. The removed logic would cause the UI thread to ANR when the GL thread is blocked.
2024-07-04 05:18:50 -07:00
Fredia Huya-Kouadio
c6a23a7a7d Fix crashes reported by the Google Play Console 2024-07-04 02:46:11 -07:00