Godot Engine – Multi-platform 2D and 3D game engine
Go to file
Rémi Verschelde 5011afcb6a Export: Improve usability of command line interface
I'm barely scratching the surface of the changes needed to make the
--export command line interface easy to use, but this should already
improve things somewhat.

- Streamline `can_export()` templates check in all platforms, checking
  first for the presence of official templates, then of any defined
  custom template, and reporting on the absence of any.
  Shouldn't change the actual return value much which is still true if
  either release or debug is usable - we might want to change that
  eventually and better validate against the requested target.

- Fix discrepancy between platforms using `custom_package/debug` and
  `custom_template/debug` (resp. `release`).
  All now use `custom_template`, which will break compatibility for
  `export_presets.cfg` with earlier projects (but is easy to fix).

- Use `can_export()` when attempting a command line export and report
  the same errors that would be shown in the editor.

- Improve error reporting after a failed export attempt, handling
  missing template and invalid path more gracefully.

- Cleanup of unused stuff in EditorNode around the export workflow.

- Improve --export documentation in --help a bit.

Fixes #16949 (at least many of the misunderstandings listed there).
Fixes #18470.
2020-01-07 14:25:56 +01:00
.github Delete ISSUE_TEMPLATE.md 2019-09-04 15:29:49 -03:00
core Merge pull request #34020 from gytsen/unify-pack-version 2020-01-06 14:04:55 +01:00
doc Rewording RichTextLabel::remove_line documentation 2020-01-07 08:29:10 +08:00
drivers Merge pull request #34808 from Calinou/no-color-in-non-tty 2020-01-06 16:39:47 +01:00
editor Export: Improve usability of command line interface 2020-01-07 14:25:56 +01:00
main Export: Improve usability of command line interface 2020-01-07 14:25:56 +01:00
misc Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
modules GDScript LSP: Implement goto declaration 2020-01-04 20:02:26 +08:00
platform Export: Improve usability of command line interface 2020-01-07 14:25:56 +01:00
scene Fixes crash when using Mesh::create_outline and Mesh::create_convex_shape 2020-01-07 16:15:14 +08:00
servers Add VisualServer methods to get the video adapter name and vendor 2020-01-06 00:37:56 +01:00
thirdparty Merge pull request #34843 from akien-mga/enet-1.3.14 2020-01-06 17:30:36 +01:00
.appveyor.yml AppVeyor: Skip saving cache on non-master branches 2019-07-02 18:30:27 +02:00
.clang-format clang-format: Set standard for ObjC++ 2019-02-09 12:20:24 +01:00
.editorconfig Include SConstruct in .editorconfig 2019-05-26 18:49:55 +02:00
.gitattributes Git: Explicitly list binary files as such to avoid EOL change 2019-05-25 10:43:48 +02:00
.gitignore Added support to allow to compile Godot from the same directory while using different versions of python 2020-01-01 11:52:11 +01:00
.mailmap Update AUTHORS and DONORS list 2019-12-13 13:50:33 +01:00
.travis.yml Travis: Fix reporting clang-format errors after #34097 2019-12-16 08:46:36 +01:00
AUTHORS.md Update AUTHORS and DONORS list 2019-12-13 13:50:33 +01:00
CHANGELOG.md Bump version to 3.1-stable \o/ 2019-03-13 17:16:00 +01:00
CODE_OF_CONDUCT.md Add a link to the code of conduct in the repository 2019-12-22 18:05:24 +01:00
CONTRIBUTING.md Minor English fix 2019-04-06 18:45:02 -04:00
COPYRIGHT.txt Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
DONORS.md Update AUTHORS and DONORS list 2019-12-13 13:50:33 +01:00
LICENSE.txt Update copyright statements to 2020 2020-01-01 11:16:22 +01:00
LOGO_LICENSE.md Improve documentation of thirdparty code snippets 2017-05-07 11:42:37 +02:00
README.md Add Weblate badge to README.md 2019-07-06 00:22:31 -03:00
SConstruct Added support to allow to compile Godot from the same directory while using different versions of python 2020-01-01 11:52:11 +01:00
compat.py fixed building using scons with python3 2018-05-28 18:41:16 +01:00
gles_builders.py Remove trailing whitespace 2018-11-20 11:15:02 +01:00
icon.png Optimize images losslessly using `oxipng -o6 --strip all --zopfli` 2018-06-28 19:17:41 +02:00
icon.svg Use new Godot icon consistently everywhere 2017-05-17 19:53:59 +02:00
logo.png Optimize images losslessly using `oxipng -o6 --strip all --zopfli` 2018-06-28 19:17:41 +02:00
logo.svg Use new Godot icon consistently everywhere 2017-05-17 19:53:59 +02:00
methods.py PCK: Set VERSION_PATCH in header, factor out header magic 2020-01-06 13:13:17 +01:00
platform_methods.py Fixed short circuiting on non-Windows platforms 2018-07-30 23:55:15 +02:00
version.py PCK: Set VERSION_PATCH in header, factor out header magic 2020-01-06 13:13:17 +01:00

README.md

Godot Engine logo

Godot Engine

Homepage: https://godotengine.org

2D and 3D cross-platform game engine

Godot Engine is a feature-packed, cross-platform game engine to create 2D and 3D games from a unified interface. It provides a comprehensive set of common tools, so that users can focus on making games without having to reinvent the wheel. Games can be exported in one click to a number of platforms, including the major desktop platforms (Linux, Mac OSX, Windows) as well as mobile (Android, iOS) and web-based (HTML5) platforms.

Free, open source and community-driven

Godot is completely free and open source under the very permissive MIT license. No strings attached, no royalties, nothing. The users' games are theirs, down to the last line of engine code. Godot's development is fully independent and community-driven, empowering users to help shape their engine to match their expectations. It is supported by the Software Freedom Conservancy not-for-profit.

Before being open sourced in February 2014, Godot had been developed by Juan Linietsky and Ariel Manzur (both still maintaining the project) for several years as an in-house engine, used to publish several work-for-hire titles.

Screenshot of a 3D scene in Godot Engine

Getting the engine

Binary downloads

Official binaries for the Godot editor and the export templates can be found on the homepage.

Compiling from source

See the official docs for compilation instructions for every supported platform.

Community and contributing

Godot is not only an engine but an ever-growing community of users and engine developers. The main community channels are listed on the homepage.

To get in touch with the developers, the best way is to join the #godotengine IRC channel on Freenode.

To get started contributing to the project, see the contributing guide.

Documentation and demos

The official documentation is hosted on ReadTheDocs. It is maintained by the Godot community in its own GitHub repository.

The class reference is also accessible from within the engine.

The official demos are maintained in their own GitHub repository as well.

There are also a number of other learning resources provided by the community, such as text and video tutorials, demos, etc. Consult the community channels for more info.

Travis Build Status AppVeyor Build Status Code Triagers Badge Translate on Weblate