summaryrefslogtreecommitdiffstats
path: root/core/config/engine.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix copyright headers referring to GodotSpartan3222024-10-271-2/+2
|
* Rebrand preambles to RedotSpartan3222024-10-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | (cherry picked from commit e8542b06acca3c1bdeee4b528411771f0819f084) Credits: Co-authored-by: Skogi <skogi.b@gmail.com> Co-authored-by: Spartan322 <Megacake1234@gmail.com> Co-authored-by: swashberry <swashdev@pm.me> Co-authored-by: Christoffer Sundbom <christoffer_karlsson@live.se> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: McDubh <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: radenthefolf <radenthefolf@gmail.com> Co-authored-by: John Knight <80524176+Tekisasu-JohnK@users.noreply.github.com> Co-authored-by: Adam Vondersaar <adam.vondersaar@uphold.com> Co-authored-by: decryptedchaos <nixgod@gmail.com> Co-authored-by: zaftnotameni <122100803+zaftnotameni@users.noreply.github.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: wesam <108880473+wesamdev@users.noreply.github.com> Co-authored-by: Mister Puma <MisterPuma80@gmail.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: SingleError <isaaconeoneone@gmail.com> Co-authored-by: Bioblaze Payne <BioblazePayne@gmail.com>
* Rebrand Godot 4.3 to RedotTrashguy2024-10-131-0/+3
|
* GDExtension: Prevent crash during shutdown as singletons are deletedDavid Snopek2024-05-101-1/+1
|
* Use WorkerThreadPool for Server threadsJuan Linietsky2024-04-101-0/+7
| | | | | | | | | | | | | | | | | * 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>
* Properly skip printing version header with `--no-header`Samuel Nicholas2024-03-261-0/+1
| | | | Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
* Add `--no-header` option to clean outputAnatoli Babenia2024-02-151-0/+3
| | | | | | | | | | | | | * Do not print empty line when header is disabled * Do not print Vulcan header * Also add "Print header" project setting (default On) (suggested by @kaissouDev) * Add docs for the project setting (with suggestions by @Mickeon and @akien-mga) Co-authored-by: Micky <66727710+Mickeon@users.noreply.github.com> Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com> Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
* Merge pull request #80284 from dsnopek/gdextension-hot-reloadRémi Verschelde2023-09-261-0/+7
|\ | | | | | | Implement reloading of GDExtensions
| * Implement reloading of GDExtensionsDavid Snopek2023-09-251-0/+7
| |
* | Differentiate between core and editor-only singletonsYuri Sizov2023-08-241-1/+5
|/ | | | | | | This makes sure that running scenes in debug mode (from the editor) does not crash Godot. In export mode it should already work correctly, because editor-only singletons are never registered in the first place.
* Add a `--audio-output-latency` command-line argumentHugo Locurcio2023-08-171-0/+4
| | | | | This allows optimizing the audio output latency on higher-end CPUs, especially in projects that do not expose a way to override this setting.
* Add support for GLSL source-level debugging with RenderDoc ↵sakrel2023-08-121-0/+2
| | | | (`--generate-spirv-debug-info`)
* Improve startup benchmarkingFredia Huya-Kouadio2023-05-231-10/+0
| | | | Move the benchmarking measuring methods from `Engine` to `OS` to allow for platform specific overrides (e.g: can be used to hook into platform specific benchmarking and tracing capabilities).
* One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
* Implement adjusting the maximum number of physics steps per rendered frameHugo Locurcio2022-10-091-0/+4
| | | | | | | | | When using high physics FPS (which is a requirement to minimize input lag and improve precision in simulation racing games), a higher value prevents the game from slowing down at low rendering FPS. This can be done via an Engine property for run-time changes, or a project setting for initial changes.
* Rename `Engine.target_fps` and associated project setting to `max_fps`Hugo Locurcio2022-10-031-3/+3
| | | | | | | | | This makes the setting easier to find, as research has found there are numerous use cases to limiting FPS. This also improves documentation related to the Engine property and project setting. The project setting also works in projects exported in release mode, so its location in the `debug/` section was misleading.
* Replace Array return types with TypedArraykobewi2022-08-221-1/+4
|
* Add Startup benchmarking supportJuan Linietsky2022-08-191-0/+10
| | | | | This adds support for benchmarking engine startup (and editor startup if used). The goal is to use this in the benchmarking server to track improvements and changes to engine, editor, importer and scene loading startup times.
* Print expected `os.arch` tuple for current platform in GDExtension errorHugo Locurcio2022-08-081-0/+2
| | | | | This also adds `Engine.get_architecture_name()` to get the name of the CPU architecture the Godot binary was built for.
* Add a Movie Quit On Finish property to AnimationPlayerHugo Locurcio2022-07-271-0/+4
| | | | | | | | | | | | | | | | | | This quits the project when an animation is done playing in the given AnimationPlayer, but only in Movie Maker mode. When this happens, a message is printed with the absolute path of the AnimationPlayer node that caused the engine to quit. This can be used to create videos that stop at a specified time without having to write any script. A report is now also printed to the console when the video is done recording (as long as the engine was exited properly). This report is unfortunately not always visible in the editor's Output panel, as it's printed too late. A method was also added to get the path to the output file from the scripting API.
* Replace most uses of Map by HashMapreduz2022-05-161-1/+1
| | | | | | | | | | | | * Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
* Zero initialize all pointer class and struct membersRémi Verschelde2022-04-041-1/+1
| | | | | This prevents the pitfall of UB when checking if they have been assigned something valid by comparing to nullptr.
* Use EditorFileDialog instead of FileDialog in the project managerHendrik Brucker2022-02-121-0/+7
|
* Merge pull request #55020 from bruvzg/vlk_device_surface_checkRémi Verschelde2022-01-171-0/+2
|\
| * [Vulkan] Check each device capabilities before selecting it.bruvzg2021-11-221-0/+2
| | | | | | | | | | | | | | Split instance and physical device selection function and move device selection to window creation, to reject devices without present capability. Add device preferred type check in discrete > integrated > virtual > cpu > other order. Add device list printout. Add command line argument to override device selection.
* | Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
|/ | | | Happy new year to the wonderful Godot community!
* Add ability to register singletons from engine APIreduz2021-08-251-2/+5
| | | | | * Exposed functions in Engine to register and unregister singletons. * Added the concept of user singletons, which can be removed (the system ones can't).
* Rename `iterations_per_second` to `physics_ticks_per_second`Hugo Locurcio2021-08-111-2/+2
| | | | | | | | This makes it clearer that this property is only about physics FPS, not rendering FPS. The `physics_fps` project setting was also renamed to `physics_ticks_per_second` for consistency.
* Use doubles for time in many other placesAaron Franke2021-08-091-12/+12
|
* Implement native extension systemreduz2021-06-251-1/+2
| | | | | | * Deprecates GDNative in favor of a simpler, lower level interface. * New extension system allows registering core engine classes. * Simple header interface in gdnative_interace.h
* Merge pull request #48359 from Calinou/add-engine-print-error-propertyRémi Verschelde2021-06-201-0/+3
|\
| * Add `Engine.print_error_messages` property to disable printing errorsHugo Locurcio2021-05-011-0/+3
| | | | | | | | | | | | | | | | This can be used during unit test suite runs to hide error and warning messages. Care should be taken when using this feature, as it can hide important information if used wrongly.
* | Implement shader cachingreduz2021-05-311-0/+5
|/ | | | | | | | | | | | * Shader compilation is now cached. Subsequent loads take less than a millisecond. * Improved game, editor and project manager startup time. * Editor uses .godot/shader_cache to store shaders. * Game uses user://shader_cache * Project manager uses $config_dir/shader_cache * Options to tweak shader caching in project settings. * Editor path configuration moved from EditorSettings to new class, EditorPaths, so it can be available early on (before shaders are compiled). * Reworked ShaderCompilerRD to ensure deterministic shader code creation (else shader may change and cache will be invalidated). * Added shader compression with SMOLV: https://github.com/aras-p/smol-v
* Update copyright statements to 2021Rémi Verschelde2021-01-011-2/+2
| | | | | | | | | | | | | | Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
* Rename MainLoop methods to match Node methodsMarcel Admiraal2020-12-221-5/+5
|
* Warn about singleton being a ReferencePedro J. Estébanez2020-11-191-4/+1
|
* Reorganized core/ directory, it was too fatty alreadyreduz2020-11-071-0/+134
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code