introduction_to_godot.rst 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. .. _doc_introduction_to_godot:
  2. Introduction to Godot
  3. =====================
  4. This article is here to help you figure out whether Godot might be a good fit
  5. for you. We will introduce some broad features of the engine to give you a feel
  6. for what you can achieve with it and answer questions such as "what do I need to
  7. know to get started?".
  8. This is by no means an exhaustive overview. We will introduce many more features
  9. in this getting started series.
  10. What is Godot?
  11. --------------
  12. Godot is a general-purpose 2D and 3D game engine designed to support all sorts
  13. of projects. You can use it to create games or applications you can then release
  14. on desktop or mobile, as well as on the web.
  15. You can also create console games with it, although you either need strong
  16. programming skills or a developer to port the game for you.
  17. .. note:: The Godot team can't provide an open source console export due to the
  18. licensing terms imposed by console manufacturers. Regardless of the
  19. engine you use, though, releasing games on consoles is always a lot of
  20. work. You can read more on that here: :ref:`doc_consoles`.
  21. What can the engine do?
  22. -----------------------
  23. Godot was initially developed in-house by an Argentinian game studio. Its
  24. development started in 2001, and the engine was rewritten and improved
  25. tremendously since its open source release in 2014.
  26. Some examples of games created with Godot include Cassette Beasts, PVKK, and
  27. Usagi Shima. As for applications, the open source pixel art drawing program
  28. Pixelorama is powered by Godot, and so is the voxel RPG creator RPG in a Box.
  29. You can find many more examples in the `Official Showcase
  30. <https://godotengine.org/showcase/>`_.
  31. .. figure:: img/introduction_usagi_shima.webp
  32. :align: center
  33. Usagi Shima
  34. .. figure:: img/introduction_cassette_beasts.webp
  35. :align: center
  36. Cassette Beasts
  37. .. figure:: img/introduction_pvkk.webp
  38. :align: center
  39. PVKK: Planetenverteidigungskanonenkommandant
  40. .. figure:: img/introduction_rpg_in_a_box.webp
  41. :align: center
  42. RPG in a Box
  43. How does it work and look?
  44. --------------------------
  45. Godot comes with a fully-fledged game editor with integrated tools to answer the
  46. most common needs. It includes a code editor, an animation editor, a tilemap
  47. editor, a shader editor, a debugger, a profiler, and more.
  48. .. image:: img/introduction_editor.webp
  49. The team strives to offer a feature-rich game editor with a consistent user
  50. experience. While there is always room for improvement, the user interface keeps
  51. getting refined.
  52. Of course, if you prefer, you can work with external programs. We officially
  53. support importing 3D scenes designed in Blender_ and maintain plugins to code in
  54. VSCode_ and Emacs_ for GDScript and C#. We also support Visual Studio for C# on
  55. Windows.
  56. .. image:: img/introduction_vscode.png
  57. Programming languages
  58. ---------------------
  59. Let's talk about the available programming languages.
  60. You can code your games using :ref:`GDScript <doc_gdscript>`, a
  61. Godot-specific and tightly integrated language with a lightweight syntax, or
  62. :ref:`C# <doc_c_sharp>`, which is popular in the games industry.
  63. These are the two main scripting languages we support.
  64. With the GDExtension technology, you can also write
  65. gameplay or high-performance algorithms in C or C++ without recompiling the
  66. engine. You can use this technology to integrate third-party libraries and other
  67. Software Development Kits (SDK) in the engine.
  68. Of course, you can also directly add modules and features to the engine, as it's
  69. completely free and open source.
  70. .. _doc_introduction_learning_programming:
  71. What do I need to know to use Godot?
  72. ------------------------------------
  73. Godot is a feature-packed game engine. With its thousands of features, there is
  74. a lot to learn. To make the most of it, you need good programming foundations.
  75. While we try to make the engine accessible, you will benefit a lot from knowing
  76. how to think like a programmer first.
  77. Godot relies on the object-oriented programming paradigm. Being comfortable with
  78. concepts such as classes and objects will help you code efficiently in it.
  79. If you are entirely new to programming, we recommend following the `CS50 open
  80. courseware`_ from Harvard University. It's a great free course that will teach
  81. you everything you need to know to be off to a good start. It will save you
  82. countless hours and hurdles learning any game engine afterward.
  83. .. note:: In CS50, you will learn multiple programming languages. Don't be
  84. afraid of that: programming languages have many similarities. The
  85. skills you learn with one language transfer well to others.
  86. We will provide you with more Godot-specific learning resources in
  87. :ref:`doc_learning_new_features`.
  88. In the next part, you will get an overview of the engine's essential concepts.
  89. .. _Blender: https://www.blender.org/
  90. .. _VSCode: https://github.com/godotengine/godot-vscode-plugin
  91. .. _Emacs: https://github.com/godotengine/emacs-gdscript-mode
  92. .. _official showcase videos: https://www.youtube.com/playlist?list=PLeG_dAglpVo6EpaO9A1nkwJZOwrfiLdQ8
  93. .. _CS50 open courseware: https://cs50.harvard.edu/x