summaryrefslogtreecommitdiff
path: root/editor/editor_run.cpp
AgeCommit message (Collapse)Author
2022-06-21Implement Running Godot as Movie Writerreduz
* Allows running the game in "movie writer" mode. * It ensures entirely stable framerate, so your run can be saved stable and with proper sound (which is impossible if your CPU/GPU can't sustain doing this in real-time). * If disabling vsync, it can save movies faster than the game is run, but if you want to control the interaction it can get difficult. * Implements a simple, default MJPEG writer. This new features has two main use cases, which have high demand: * Saving game videos in high quality and ensuring the frame rate is *completely* stable, always. * Using Godot as a tool to make movies and animations (which is ideal if you want interaction, or creating them procedurally. No other software is as good for this). **Note**: This feature **IS NOT** for capturing real-time footage. Use something like OBS, SimpleScreenRecorder or FRAPS to achieve that, as they do a much better job at intercepting the compositor than Godot can probably do using Vulkan or OpenGL natively. If your game runs near real-time when capturing, you can still use this feature but it will play no sound (sound will be saved directly). Usage: $ godot --write-movie movie.avi [scene_file.tscn] Missing: * Options for configuring video writing via GLOBAL_DEF * UI Menu for launching with this mode from the editor. * Add to list of command line options. * Add a feature tag to override configurations when movie writing (fantastic for saving videos with highest quality settings).
2022-04-20Avoid setting sub-window or started project window positions, if it's ↵bruvzg
impossible to get screen rect.
2022-04-06Fix some issues found by cppcheck.bruvzg
2022-02-12Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker
2022-01-04Rename Project Window width and height settings to match their functionMarcel Admiraal
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-09Replace String comparisons with "", String() to is_empty()Nathan Franke
Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
2021-12-04Auto-Increment Debugger PortNathan Franke
Note: This PR also changes the port of the GDScript Language Server from 6008 to 6005. This opens enough ports above the debug port (6007) for this change to be useful.
2021-11-23Rename `remove()` to `remove_at()` when removing by indexLightning_A
2021-11-01[macOS] Add `create_instance` function to spawn editor copies.bruvzg
[macOS] Modify `create_project` function to detect and run app bundles using NSWorkspace to ensure app window is registered and activated correctly.
2021-07-29Clear debug process id at `stop()` to prevent invalid checking of themYuri Roubinsky
2021-07-25Use const references where possible for List range iteratorsRémi Verschelde
2021-07-23Use C++ iterators for Lists in many situationsAaron Franke
2021-05-07Implement the `%command%` placeholder in the Main Run Args settingHugo Locurcio
This can be used to tell Godot to run an executable that will run Godot rather than running Godot directly. This is useful to make Godot start on the dedicated GPU when using a NVIDIA Optimus setup on Linux: `prime-run %command%` The `editor/run/main_run_args` setting declaration was moved to make it visible in the ProjectSettings documentation.
2021-01-09Split OS::execute into two methodsMarcel Admiraal
1. execute(): Executes a command and returns the results. 2. create_process(): Creates a new process and returns the new process' id.
2021-01-01Update copyright statements to 2021Rémi Verschelde
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 🎆
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-09-03[Complex Test Layouts] Change `String` to use UTF-32 encoding on all platforms.bruvzg
2020-07-06Expose methods to play scene from plugin codeYuri Sizov
2020-07-04[macOS] Implement seamless display scaling.bruvzg
2020-05-14Style: Enforce braces around if blocks and loopsRémi Verschelde
Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-05-12Support multiple debug protocols.Fabio Alessandrelli
2020-03-26Add macOS DisplayServer implementation.bruvzg
Change global menu to use Callable, add support for check items and submenus.
2020-03-26Effective DisplayServer separation, rename X11 -> LinuxBSDJuan Linietsky
2020-03-08Move Debug menu logic to DebuggerEditorPluginFabio Alessandrelli
2020-02-21Huge Debugger/EditorDebugger refactor.Fabio Alessandrelli
2020-01-01Update copyright statements to 2020Rémi Verschelde
Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
2019-09-03Adds skip-breakpoints featureiwek7
2019-07-10Use reference to constant in functionsqarmin
2019-06-26Some code changed with Clang-Tidyqarmin
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-09-12Make core/ includes absolute, remove subfolders from include pathRémi Verschelde
This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
2018-08-27Revert "Try closing gracefully before terminating process"Rémi Verschelde
2018-08-22Merge pull request #21150 from Calinou/more-window-placement-optionsRémi Verschelde
Add more project window placement options
2018-08-22Add more project window placement optionsHugo Locurcio
It is now possible to use the previous or next monitor (relative to the editor) to display running projects. If either end is reached, it will wrap around to the last or first monitor (respectively). This closes #20283.
2018-08-20Try closing gracefully before terminating processMarcin Zawiejski
Use a Microsoft recommended way of process termination for the project process run from the editor. This allows loaded DLLs to receive and handle DLL_PROCESS_DETACH notification and cleanup any global state before the process actually exits.
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!
2017-12-10Fix player window centering on macOS retina screensBernhard Liebl
2017-09-13Added a crash handler to dump the backtrace on Windows, Linux and OS XMarcelo Fernandez
2017-08-27Use HTTPS URL for Godot's website in the headersRémi Verschelde
2017-08-21Fixes for new two-dash long command line argumentsRémi Verschelde
- Fixes some single-dash leftovers that were missed in the previous commit - Reorder the help output for clarity, and document missing options - Drop obsolete options: --noop, --pack, --editor-scene, --level, --import, --import-script, --no-quit - Improve error message on malformed arguments and do not display help on error - Always use long form of arguments when starting a new Godot process from C++, for clarity and easy grepping - Cleanup obsolete code here and there
2017-08-21Tweak command-line arguments to make them more UNIX-likeHugo Locurcio
Also improves the command-line help text readability.
2017-08-20simplify the way window is allowed to steal focus, no longer relying on ↵Juan Linietsky
project.godot. Closes #9459
2017-08-20Rename "Default" window placement mode to "Top Left"Rémi Verschelde
It is no longer the default value ;)
2017-08-19Revert "Second take at making command-line arguments more UNIX-like + ↵Juan Linietsky
main.cpp and help cleanup"
2017-08-19Fixes for new two-dash long command line argumentsRémi Verschelde
- Fixes some single-dash leftovers that were missed in the previous commit - Reorder the help output for clarity, and document missing options - Drop obsolete options: --noop, --pack, --editor-scene, --level, --import, --import-script, --no-quit - Improve error message on malformed arguments and do not display help on error - Cleanup obsolete code here and there
2017-08-19Tweak command-line arguments to make them more UNIX-likeHugo Locurcio
Also improves the command-line help text readability.
2017-08-07Makes all Godot API's methods Lower CaseIndah Sylvia