diff --git a/getting_started/introduction/index.rst b/getting_started/introduction/index.rst new file mode 100644 index 000000000..e1b2de5a7 --- /dev/null +++ b/getting_started/introduction/index.rst @@ -0,0 +1,16 @@ +Getting Started: 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..0b053bbae --- /dev/null +++ b/getting_started/introduction/learning_new_features.rst @@ -0,0 +1,117 @@ +.. _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 reference 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. + +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`. + +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. + +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 anything underlined in blue 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. The 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 to include 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, what is the exact error message you see? 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, please 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/getting_started/step_by_step/index.rst b/getting_started/step_by_step/index.rst index 06ba902f1..5ef88dbe5 100644 --- a/getting_started/step_by_step/index.rst +++ b/getting_started/step_by_step/index.rst @@ -19,4 +19,3 @@ Step by step filesystem scene_tree singletons_autoload - learning_new_features diff --git a/getting_started/step_by_step/learning_new_features.rst b/getting_started/step_by_step/learning_new_features.rst deleted file mode 100644 index 750c38af8..000000000 --- a/getting_started/step_by_step/learning_new_features.rst +++ /dev/null @@ -1,114 +0,0 @@ -.. _doc_learning_new_features: - -Learning new features -===================== - -This page explains how to learn more about things you do not know. - -The Manual and Class Reference ------------------------------- - -What you are reading now is the manual. It provides an overview of each of the -engine's concepts. When learning a new topic, start with the manual to see if -it already has an official explanation. If a page exists for a topic, it will -often link to more related content. - -Godot provides most of its features through its scripting API ("Application -Programmer Interface"). This is the collection of Nodes, Resources, and other -classes available to your scenes and scripts. The -:ref:`Class Reference ` provides detailed explanations of -every class. This includes... - -1. Where the class exists in the inheritance hierarchy. - -2. An explanation of the class's properties, methods, signals, enums, and -constants. - -3. Links to manual pages further detailing the class. - -4. A summary of the class's role and use cases in the Godot API. - -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. - -In the top-left corner of the documentation, you can search the manual and -class reference for anything. - -You will also find an offline Godot API reference within the Godot Editor. -Click F4 to begin searching the Godot API, or go to Help > Search Help in the -main toolbar. Ctrl-clicking the name of a class, property, method, signal, or -constant will also open its description. - -Tutorials ---------- - -The manual and class reference do not cover basic programming concepts. -For this, please use external learning resources such as the free -and open `CS50 courseware at Harvard `_ -or -`Al Sweigart's Automate The Boring Stuff With Python `_ -series. - -Besides the 2D and 3D getting started series, they also do not cover tutorials. -For more detailed breakdowns of how to use Godot for specific tasks, please -see :ref:`doc_community_tutorials` for content made by the Godot community. - -Questions ---------- - -If you have specific questions, please ask them in your preferred -:ref:`doc_community_channels`. - -Please submit your questions to the official Q&A site. Share links to your -questions on other social platforms as needed. Q&A responses show up in -search engine results and the core Godot developers maintain them. - -Before asking a question on other platforms, be sure to look for existing -questions that might serve your needs using your preferred search engine. - -To get immediate help with live people, try the various chat-based -communities such as IRC, Matrix, and Discord. - -When asking questions, please include the following information: - -1. Which version of the engine are you using? - - The available solutions may differ based on which version it is. - -2. What is your goal? - - If you are having trouble figuring out how to make a solution work, then - there may be a different, easier solution that accomplishes the same goal. - -3. If there is an error involved, what is the exact error message you see? - - Users sometimes share an inaccurate paraphrase of their errors. The exact - error message in the debugger or console is precise in what it states went - wrong. Knowing what it says can help community members better identify how - you triggered the error. - -4. If there is code involved, can you share a code sample? - - Seeing what code is causing the problem can provide more context for - community members to better assist you. A screenshot of the scene hierarchy - where the code is executing also helps. - -Bug Reports ------------ - -If you think you have found a bug but are unsure, then go ahead and open a bug -report on `GitHub `. Be sure to -check through previous issues to see if you can find a similar one. - -If you do, please upvote the post to show that you too want to see the bug -fixed. If you have more information or context to add to the bug report, please -add a comment to it. - -If you do not find any similar past issues, then please follow the template to -submit a new bug report. - -If you ask in a community platform and someone informs you that it is a bug, -then please remember to submit the bug report. Without it, there is little -chance the Godot contributors will fix it. diff --git a/index.rst b/index.rst index 82e1233c1..d318967b8 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