Commit Graph

1356 Commits

Author SHA1 Message Date
Rémi Verschelde 4bf961e007
Merge pull request #92733 from raulsntos/core/memdelete-engine-later-but-not-that-late
Release Engine before unregistering core types
2024-06-04 10:10:21 +02:00
Raul Santos d1ab5d3717
Release Engine before unregistering core types 2024-06-03 19:17:30 +02:00
Rémi Verschelde 0d11108a01
Merge pull request #79126 from bruvzg/SteamTime
Enable optional minimal SteamAPI integration for usage time tracking (editor only).
2024-06-03 12:42:38 +02:00
bruvzg c34d64669e
Enable optional minimal SteamAPI integration for usage time tracking (editor only). 2024-05-31 11:01:02 +03:00
Rémi Verschelde cd8bd0380d
Merge pull request #92336 from van800/DAP
[DAP] Add `--dap-port` as a command line argument
2024-05-30 22:13:42 +02:00
Ivan Shakhov 77b9e60303 [DAP] Add --dap-port as a command line argument, very similar to --lsp-port 2024-05-30 21:46:37 +02:00
bruvzg 2c9df769ad
Clean Input::frame_parsed_events before de-initialising scripting languages to ensure no script created events exist at the exit. 2024-05-30 13:23:00 +03:00
patwork 2dedf6253b Fix -empty string- console log in web export 2024-05-28 12:32:46 +02:00
Paulo Poiati a3769c0edc Properly set window class in Wayland 2024-05-22 10:42:12 -03:00
Rémi Verschelde f58a96cfa2
Merge pull request #92075 from autoit4you/fix-92062
Use `GLOBAL_GET` for `window_{height,width}_override`
2024-05-18 17:41:48 +02:00
Lea 414cc6c89e Use GLOBAL_GET for window_{height,width}_override
Before ProjectSettings::get was used, resulting in ignoring
feature tag overrides for display/window/size/window_width_override
and display/window/size/window_height_override.

Fixes #92062
2024-05-18 11:51:04 +02:00
Raul Santos e516479889
Release Engine after unregistering GDExtensions
The Engine is used to retrieve singletons, and GDExtensions may try to retrieve a singleton (e.g.: `OS`) in their deinitialization.
2024-05-17 21:29:11 +02:00
Rémi Verschelde 2f1aaca167
Merge pull request #91927 from timothyqiu/monitor-names
Make performance monitor names translatable
2024-05-14 12:07:14 +02:00
Haoyu Qiu d33e79f299 Make performance monitor names translatable 2024-05-14 10:05:32 +08:00
kobewi 413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
Programneer efaba30116 Don't define NO_EDITOR_SPLASH in export templates 2024-05-12 13:12:56 +02:00
A Thousand Ships a0dbdcc3ab
Replace `find` with `contains/has` where applicable
* Replaces `find(...) != -1` with `contains` for `String`
* Replaces `find(...) == -1` with `!contains` for `String`
* Replaces `find(...) != -1` with `has` for containers
* Replaces `find(...) == -1` with `!has` for containers
2024-05-08 12:37:42 +02:00
David Snopek 2c5c3ae579 Generate docs from GDExtensions using `--gdextension-docs` with `--doctool` 2024-05-07 11:45:17 -05:00
A Thousand Ships 955d5affa8
Reduce and prevent unnecessary random-access to `List`
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
Bastiaan Olij 527c30c594 Add support for OpenXR hand interaction extension 2024-05-02 19:15:02 +10:00
RedMser 3047bd4339 Ensure --doctool is run from root directory when implicit cwd is used 2024-05-01 13:36:37 +02:00
kobewi 3ebb5b84a0 Add separate feature tags for editor runtime 2024-04-26 14:44:38 +02:00
Kusok 1e8eff815a Don't ignore `audio/driver/output_latency.web` 2024-04-25 17:09:45 +08:00
kobewi 12f39befa9 Use minor version in EditorSettings file name 2024-04-19 00:13:06 +02:00
Rémi Verschelde 35369b8d28
Merge pull request #90507 from Calinou/tests-disabled-error-on-test-cli-argument
Exit with an error if using `--test` on binary without unit tests compiled
2024-04-18 12:24:24 +02:00
A Thousand Ships abe7ec1543
Fix some build errors with `disable_3d=yes` 2024-04-16 14:25:36 +02:00
Rémi Verschelde c951421c99
Merge pull request #90268 from RandomShaper/wtp_servers
Use WorkerThreadPool for Server threads (enhanced)
2024-04-15 10:12:00 +02:00
Aaron Franke 6dd4a68797
Reorganize some code to have 2D things grouped together 2024-04-13 02:56:50 -07:00
Hugo Locurcio 7467ce6405
Exit with an error if using `--test` on binary without unit tests compiled
This makes it clearer that `tests=yes` should be used at compile-time.
Previously, the engine would run as if the argument wasn't passed,
which can be confusing.
2024-04-11 00:07:42 +02:00
Juan Linietsky 65686dedf9 Use WorkerThreadPool for Server threads
* Servers now use WorkerThreadPool for background computation.
* This helps keep the number of threads used fixed at all times.
* It also ensures everything works on HTML5 with threads.
* And makes it easier to support disabling threads for also HTML5.

CommandQueueMT now syncs with the servers via the WorkerThreadPool
yielding mechanism, which makes its classic main sync semaphore
superfluous.

Also, some warnings about calls that kill performance when using
threaded rendering are removed because there's a mechanism that
warns about that in a more general fashion.

Co-authored-by: Pedro J. Estébanez <pedrojrulez@gmail.com>
2024-04-10 18:47:42 +02:00
Mikael Hermansson 9d01793dff Add `--import` command-line flag 2024-04-09 15:18:59 +02:00
smix8 a67037635b Remove NavigationServerDummy warnings
Removes NavigationServerDummy warnings.
2024-04-06 03:07:22 +02:00
Samuel Nicholas 93559db3a2
Properly skip printing version header with `--no-header`
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-03-26 11:41:13 +01:00
Rémi Verschelde f49efbe0e5
Merge pull request #89229 from akien-mga/main-refactor-os-exit-code
Refactor OS exit code to be `EXIT_SUCCESS` by default
2024-03-24 01:15:06 +01:00
Ricardo Buring 2ed2ccc2d8 Fixed Timestep Interpolation (2D)
Adds fixed timestep interpolation to the rendering server (2D only).
Switchable on and off with a project setting (default is off).

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-03-23 12:28:36 +01:00
Rémi Verschelde 453485aede
Merge pull request #89270 from Repiteo/enforce-typename-in-templates
Enforce template syntax `typename` over `class`
2024-03-14 22:34:37 +01:00
Aaron Franke 9e0b38ecd3 Disable XR server when compiling without 3D 2024-03-13 09:02:10 -07:00
Thaddeus Crews 5a6e3cbcb0
SCons: Remove `run_in_subprocess` dependency 2024-03-11 13:20:09 -05:00
Rémi Verschelde f040a351c2
Merge pull request #89381 from aaronfranke/disable-3d
Disable all 3D nodes, physics, and resources when compiling without 3D
2024-03-11 14:02:57 +01:00
Rémi Verschelde 0475011c66
Merge pull request #82084 from ogapo/pr/pck-cache-merge
Merge `uid_cache.bin` and `global_script_class_cache.cfg` after mounting PCKs
2024-03-11 14:01:16 +01:00
Aaron Franke 6aac3e4a16 Disable all 3D nodes, physics, and resources when compiling without 3D 2024-03-11 01:00:55 -07:00
Thaddeus Crews d9fa40f2df
Enforce `\n` eol for Python writes
• Ensure utf-8 encoding if previously unspecified
2024-03-09 14:29:24 -06:00
Rémi Verschelde 023dcd44c1
Refactor OS exit code to be `EXIT_SUCCESS` by default
- `Main::setup` early exits (failure or `--help`/`--version`) now
  consistently return `EXIT_FAILURE` or `EXIT_SUCCESS` on all platforms,
  instead of 255 on some and a Godot Error code on others.
- `Main::start` now returns the exit code, simplifying the handling of early
  failures.
- `Main::iteration` needs to explicit set the exit code in OS if it errors
  out.
- Web and iOS now properly return `OS::get_exit_code()` instead of 0.
2024-03-08 23:31:24 +01:00
Thaddeus Crews 9903e6779b
Enforce template syntax `typename` over `class` 2024-03-07 22:39:09 -06:00
David Nikdel 5e6adb4a2d Merge uid_cache.bin and global_script_class_cache.cfg after mounting PCKs
fixes godotengine#82061
fixes godotengine#61556

Also, distinguish between main pack and DLC packs.
It's desirable to downloaded content to be as small as possible. This change avoids bloating non-main pack files with new versions of resources that are all read on startup and never used again. They have no effect if loaded after startup.
- project.godot/project.binary file
- extension_list.cfg
- app icon and boot_splash
- .ico and .icns files (these can still be opted in for DLC by listing them explicitly in the include filter)
2024-03-06 12:14:21 -05:00
Rémi Verschelde e63de52bdb
Check if DisplayServer supports icons before attempting setting it 2024-03-05 14:39:11 +01:00
Thaddeus Crews 0ce9b6fd1d
Add two new COMSTR environment variables 2024-03-01 12:44:03 -06:00
Rémi Verschelde 3a08c646ee
Pre-commit: Update to clang-format 17.0.6 and black 24.2.0 2024-02-28 14:25:35 +01:00
Hugo Locurcio 67e9ccdbc4
Display the build date in the editor and when starting the engine
This can be used to quickly see how recent a development build is,
without having to look up the commit date manually.
When juggling around with various builds (e.g. for benchmarking),
this can also be used to ensure that you're actually running the
binary you intended to run.

The date stored is the date of the Git commit that is built, not
the current date at the time of building the binary. This ensures
binaries can remain reproducible.

The version timestamp can be accessed using the `timestamp` key
of the `Engine.get_version_info()` return value.
2024-02-27 20:39:17 +01:00
A Thousand Ships f06222e487
[Physics] Fix export with 3D disabled 2024-02-22 16:23:48 +01:00