123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- .. _doc_introduction_to_godot:
- Introduction to Godot
- =====================
- This article is here to help you figure out whether Godot might be a good fit
- for you. We will introduce some broad features of the engine to give you a feel
- for what you can achieve with it and answer questions such as "what do I need to
- know to get started?".
- This is by no means an exhaustive overview. We will introduce many more features
- in this getting started series.
- What is Godot?
- --------------
- Godot is a general-purpose 2D and 3D game engine designed to support all sorts
- of projects. You can use it to create games or applications you can then release
- on desktop or mobile, as well as on the web.
- You can also create console games with it, although you either need strong
- programming skills or a developer to port the game for you.
- .. note:: The Godot team can't provide an open-source console export due to the
- licensing terms imposed by console manufacturers. Regardless of the
- engine you use, though, releasing games on consoles is always a lot of
- work. You can read more on that here: :ref:`doc_consoles`.
- What can the engine do?
- -----------------------
- Godot was initially developed in-house by an Argentinan game studio. Its
- development started in 2001, and the engine was rewritten and improved
- tremendously since its open-source release in 2014.
- Some examples of games created with Godot include Ex-Zodiac and Helms of Fury.
- .. image:: img/introduction_ex_zodiac.png
- .. image:: img/introduction_helms_of_fury.jpg
- As for applications, the open-source pixel art drawing program Pixelorama is
- powered by Godot, and so is the voxel RPG creator RPG in a box.
- .. image:: img/introduction_rpg_in_a_box.png
- You can find many more examples in the `official showcase videos`_.
- How does it work and look?
- --------------------------
- Godot comes with a fully-fledged game editor with integrated tools to answer the
- most common needs. It includes a code editor, an animation editor, a tilemap
- editor, a shader editor, a debugger, a profiler, and more.
- .. image:: img/introduction_editor.png
- The team strives to offer a feature-rich game editor with a consistent user
- experience. While there is always room for improvement, the user interface keeps
- getting refined.
- Of course, if you prefer, you can work with external programs. We officially
- support importing 3D scenes designed in Blender_ and maintain plugins to code in
- VSCode_ and Emacs_ for GDScript and C#. We also support Visual Studio for C# on
- Windows.
- .. image:: img/introduction_vscode.png
- Programming languages
- ---------------------
- Let's talk about the available programming languages.
- You can code your games using :ref:`GDScript <toc-learn-scripting-gdscript>`, a
- Godot-specific and tightly integrated language with a lightweight syntax, or
- :ref:`C# <toc-learn-scripting-C#>`, which is popular in the games industry.
- These are the two main scripting languages we support.
- Godot also supports a node-based visual programming language named
- :ref:`VisualScript <toc-learn-scripting-visual_script>`.
- With the :ref:`GDNative <toc-tutorials-gdnative>` technology, you can also write
- gameplay or high-performance algorithms in C or C++ without recompiling the
- engine. You can use this technology to integrate third-party libraries and other
- Software Development Kits (SDK) in the engine.
- Of course, you can also directly add modules and features to the engine, as it's
- completely free and open-source.
- .. seealso:: These are the five officially supported programming languages. The
- community maintains support for many more. For more information,
- see :ref:`GDNative third-party bindings
- <doc_what_is_gdnative_third_party_bindings>`.
- What do I need to know to use Godot?
- ------------------------------------
- Godot is a feature-packed game engine. With its thousands of features, there is
- a lot to learn. To make the most of it, you need good programming foundations.
- While we try to make the engine accessible, you will benefit a lot from knowing
- how to think like a programmer first.
- Godot relies on the object-oriented programming paradigm. Being comfortable with
- concepts such as classes and objects will help you code efficiently in it.
- If you are entirely new to programming, we recommend following the `CS50 open
- courseware`_ from Harvard University. It's a great free course that will teach
- you everything you need to know to be off to a good start. It will save you
- countless hours and hurdles learning any game engine afterward.
- .. note:: In CS50, you will learn multiple programming languages. Don't be
- afraid of that: programming languages have many similarities. The
- skills you learn with one language transfer well to others.
- We will provide you with more Godot-specific learning resources in
- :ref:`doc_learning_new_features`.
- In the next part, you will get an overview of the engine's essential concepts.
- .. _Blender: https://www.blender.org/
- .. _VSCode: https://github.com/godotengine/godot-vscode-plugin
- .. _Emacs: https://github.com/godotengine/emacs-gdscript-mode
- .. _official showcase videos: https://www.youtube.com/playlist?list=PLeG_dAglpVo6EpaO9A1nkwJZOwrfiLdQ8
- .. _CS50 open courseware: https://cs50.harvard.edu/x
|