diff --git a/community/tutorials.rst b/community/tutorials.rst index 18df61c8a..1447547c2 100644 --- a/community/tutorials.rst +++ b/community/tutorials.rst @@ -14,11 +14,14 @@ The Godot video tutorials by `GDQuest `_ may be worth a look. +If you're interested in a complete introduction to programming using Godot and GDScript, the unofficial `Godot Tutorials `_ YouTube channel is a good place to start. + Some tutorials mentioned below provide more advanced tutorials, e.g. on 3D or shaders. Video tutorials --------------- +- `Godot Tutorials `_ (2D, GDScript, Programming Basics). - `Emilio `_ (2D, GDScript and VisualScript). - `GDQuest `_ (2D and 3D, GDScript, VisualScript and C#). - `Game Development Channel `_ (2D, GDScript). diff --git a/getting_started/introduction/img/manual_class_reference_inheritance.png b/getting_started/introduction/img/manual_class_reference_inheritance.png new file mode 100644 index 000000000..932f944b0 Binary files /dev/null and b/getting_started/introduction/img/manual_class_reference_inheritance.png differ diff --git a/getting_started/introduction/img/manual_class_reference_search.png b/getting_started/introduction/img/manual_class_reference_search.png new file mode 100644 index 000000000..4a511b9e3 Binary files /dev/null and b/getting_started/introduction/img/manual_class_reference_search.png differ diff --git a/getting_started/introduction/img/manual_search.png b/getting_started/introduction/img/manual_search.png new file mode 100644 index 000000000..4a2406217 Binary files /dev/null and b/getting_started/introduction/img/manual_search.png differ diff --git a/getting_started/introduction/index.rst b/getting_started/introduction/index.rst new file mode 100644 index 000000000..12eeb7728 --- /dev/null +++ b/getting_started/introduction/index.rst @@ -0,0 +1,16 @@ +Introduction +============ + +This series will introduce you to Godot and give you an overview of its +features. + +In the following pages, you will get answers to questions such as "Is Godot for +me?" or "What can I do with Godot?". We will then run you through the editor's +interface, introduce the engine's most essential concepts, and give you tips to +make the most of your time learning it. + +.. toctree:: + :maxdepth: 1 + :name: toc-learn-introduction + + learning_new_features diff --git a/getting_started/introduction/learning_new_features.rst b/getting_started/introduction/learning_new_features.rst new file mode 100644 index 000000000..4ec0cae50 --- /dev/null +++ b/getting_started/introduction/learning_new_features.rst @@ -0,0 +1,123 @@ +.. _doc_learning_new_features: + +Learning new features +===================== + +Godot is a feature-rich game engine. There is a lot to learn about it. This page +explains how you can use the online manual, built-in code reference, and join +online communities to learn new features and techniques. + +Making the most of this manual +------------------------------ + +What you are reading now is the user manual. It documents each of the engine's +concepts and available features. When learning a new topic, you can start by +browsing the corresponding section of this website. The left menu allows you to +explore broad topics while the search bar will help you find more specific +pages. If a page exists for a given theme, it will often link to more related +content. + +.. image:: img/manual_search.png + +The manual has a companion class reference that explains each Godot class's +available functions and properties when programming. While the manual covers +general features, concepts, and how to use the editor, the reference is all +about using Godot's scripting API (Application Programming Interface). You can +access it both online and offline. We recommend browsing the reference offline, +from within the Godot editor. To do so, go to Help -> Search or press +:kbd:`Shift F1`. + +.. image:: img/manual_class_reference_search.png + +To browse it online, head to the manual's :ref:`Class Reference ` +section. + +A class reference's page tells you: + +1. Where the class exists in the inheritance hierarchy. You can click the top + links to jump to parent classes and see the properties and methods a type + inherits. + + .. image:: img/manual_class_reference_inheritance.png + +2. A summary of the class's role and use cases. + +3. An explanation of the class's properties, methods, signals, enums, and + constants. + +4. Links to manual pages further detailing the class. + +.. note:: If the manual or class reference is missing or has insufficient + information, please open an Issue in the official `godot-docs + `_ GitHub repository + to report it. + +You can Ctrl-click any underlined text like the name of a class, property, +method, signal, or constant to jump to it. + +Learning to think like a programmer +----------------------------------- + +Teaching programming foundations and how to think like a game developer is +beyond the scope of Godot's documentation. If you're new to programming, we +recommend two excellent free resources to get you started: + +1. Harvard university offers a free courseware to learn to program, `CS50 + `_. It will teach you programming + fundamentals, how code works, and how to think like a programmer. These + skills are essential to become a game developer and learn any game engine + efficiently. You can see this course as an investment that will save you time + and trouble when you learn to create games. + +2. If you prefer books, check out the free ebook `Automate The Boring Stuff With + Python `_ by Al Sweigart's. + +Learning with the community +--------------------------- + +Godot has a growing community of users. If you're stuck on a problem or need +help to better understand how to achieve something, you can ask other users for +help on one of the many `active +communities `_. + +The best place to ask for questions and find already answered ones is the +official `Questions & Answers `_ site. These +responses show up in search engine results and get saved, allowing other users +to benefit from discussions on the platform. Once you asked a question there, +you can share its link on other social platforms. Before asking a question, be +sure to look for existing answers that might solve your problem on this website +or using your preferred search engine. + +Asking questions well and providing details will help others answer you faster +and better. When asking questions, we recommend including the following +information: + +1. **Describe your goal**. You want to explain what you are trying to achieve + design-wise. If you are having trouble figuring out how to make a solution + work, there may be a different, easier solution that accomplishes the same + goal. + +2. If there is an error involved, **share the exact error message**. You + can copy the exact error message in the editor's Debugger bottom panel by + clicking the Copy Error icon. Knowing what it says can help community members + better identify how you triggered the error. + +3. If there is code involved, **share a code sample**. Often, other users won't + be able to help you fix a problem without seeing your code. Try to share the + code as text directly. To do so, you can copy and paste a short code snippet + in the chat directly, or use a website like `Pastebin + `_ to share long files. A screenshot of the scene in + which your code runs also helps. + +4. If you're not using the stable version of Godot, please mention the version + you're using. The answer can be different as available features and the + interface evolve rapidly. + +Community tutorials +------------------- + +This manual aims to provide a comprehensive reference of Godot's features. Aside +from the 2D and 3D getting started series, it does not contain tutorials to +implement specific game genres. If you're looking for a tutorial about creating +a role-playing game, a platformer, or other, please see +:ref:`doc_community_tutorials`, which lists content made by the Godot community. diff --git a/index.rst b/index.rst index 83c84d0e1..1d389c6bb 100644 --- a/index.rst +++ b/index.rst @@ -69,6 +69,7 @@ The main documentation for the site is organized into the following sections: :caption: Getting started :name: sec-learn + getting_started/introduction/index getting_started/step_by_step/index getting_started/editor/index getting_started/workflow/index