diff --git a/learning/editor/unity_to_godot.rst b/learning/editor/unity_to_godot.rst index f8b465824..02ca6b8a4 100644 --- a/learning/editor/unity_to_godot.rst +++ b/learning/editor/unity_to_godot.rst @@ -40,7 +40,6 @@ Differences | | | | +-------------------+-----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------+ -, , , The editor ---------- @@ -106,7 +105,7 @@ Finally, the main scene would then be composed of one root node with 2 children: The root node can be anything, generally a "root" type such as "Node" which is the most global type, or "Node2D" (root type of all 2D-related nodes), "Spatial" (root type of all 3D-related nodes) or "Control" (root type of all GUI-related nodes). -As you can see, every scene is organized as a tree. The same goes for nodes' properties: you don't *add* a collision component to a node to make it collidable like Unity does. Instead, you make this node a *child* of a new specific node that has collision properties. Godot features various collision types nodes, depending of the use (see the `Physics introduction <../tutorials/2d/physics_introduction>`_). +As you can see, every scene is organized as a tree. The same goes for nodes' properties: you don't *add* a collision component to a node to make it collidable like Unity does. Instead, you make this node a *child* of a new specific node that has collision properties. Godot features various collision types nodes, depending of the use (see the :ref:`Physics introduction <_doc_pysics_introduction>`). - Question: What are the advantages of this system? Wouldn't this system potentially increase the depth of the scene tree? Besides, Unity allows organizing GameObjects by putting them in empty GameObjects. @@ -158,7 +157,7 @@ Design As you may know already, Unity supports 2 scripting languages for its API: C# and Javascript (called UnityScript). Both languages can be used in the same project (but not in the same file, of course). Choosing one instead of the other is a matter of personal taste, as performances seem not to be affected that much by the use of Javascript as long as the project remains small. C# benefits from its integration with Visual Studio and other specific features, such as static typing. -Godot provides its own scripting language: GDScript. This language borrows its syntax to Python, but is not related to it. If you wonder about why GDScript and not Lua, C# or any other, please read `GDScript `_ and `FAQ `_ pages. GDScript is strongly attached to Godot API, but it is really easy to learn: between 1 evening for an experimented programmer and 1 week for a complete beginner. +Godot provides its own scripting language: GDScript. This language borrows its syntax to Python, but is not related to it. If you wonder about why GDScript and not Lua, C# or any other, please read :ref:`GDScript ` and `FAQ `_ pages. GDScript is strongly attached to Godot API, but it is really easy to learn: between 1 evening for an experimented programmer and 1 week for a complete beginner. Unity allows you to attach as many scripts as you want to a GameObject. Each script adds a behaviour to the GameObject: for example, you can attach a script so that it reacts to the player's controls, and another that controls its specific game logic. @@ -172,7 +171,7 @@ As you can see, it can be easy to turn a scene tree to a mess. This is why it is Connections : groups and signals ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -You can control nodes by accessing them using a script, and call functions (built-in or user-defined) on them. But there's more: you can also place them in a group and call a function on all nodes contained in this group! This is explained in `this page <../tutorials/step_by_step/scripting_continued#groups>`_. +You can control nodes by accessing them using a script, and call functions (built-in or user-defined) on them. But there's more: you can also place them in a group and call a function on all nodes contained in this group! This is explained in :ref:`this page `. But there's more! Certain nodes throw signals when certain actions happen. You can connect these signals to call a specific function when they happen. Note that you can define your own signals and send them whenever you want. This feature is documented `here `_. @@ -182,4 +181,4 @@ Using Godot in C++ Just for your information, Godot also allows you to develop your project directly in C++ by using its API, which is not possible with Unity at the moment. As an example, you can consider Godot Engine's editor as a "game" written in C++ using Godot API. -If you are interested in using Godot in C++, you may want to start reading the `Developing in C++ <_developing.html>`_ page. +If you are interested in using Godot in C++, you may want to start reading the :ref:`Developing in C++ ` page.