Sync Sphinx and Weblate templates with 4.x docs

This commit is contained in:
Rémi Verschelde
2023-09-18 18:36:10 +02:00
parent 21dc4323ae
commit feacabee01
523 changed files with 156488 additions and 93331 deletions

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -33,173 +33,213 @@ msgid "The license is the legal requirement for you (or your company) to use and
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:21
msgid "This section covers compliance with licenses from a user perspective. If you are interested in licence compliance as a contributor, you can find guidelines :ref:`here <doc_best_practices_for_engine_contributors_license_compliance>`."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:27
msgid "In your project's credits screen, remember to also list third-party notices for assets you're using, such as textures, models, sounds, music and fonts."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:24
#: ../../docs/about/complying_with_licenses.rst:30
msgid "Free assets in particular often come with licenses that require attribution. Double-check their license before using those assets in a project."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:28
#: ../../docs/about/complying_with_licenses.rst:34
msgid "Requirements"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:30
#: ../../docs/about/complying_with_licenses.rst:36
msgid "In the case of the MIT license, the only requirement is to include the license text somewhere in your game or derivative project."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:33
#: ../../docs/about/complying_with_licenses.rst:39
msgid "This text reads as follows:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:35
#: ../../docs/about/complying_with_licenses.rst:41
msgid "This game uses Godot Engine, available under the following license:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:37
#: ../../docs/about/complying_with_licenses.rst:43
msgid "Copyright (c) 2014-present Godot Engine contributors. Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:40
#: ../../docs/about/complying_with_licenses.rst:133
#: ../../docs/about/complying_with_licenses.rst:46
#: ../../docs/about/complying_with_licenses.rst:163
msgid "Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:42
#: ../../docs/about/complying_with_licenses.rst:135
#: ../../docs/about/complying_with_licenses.rst:48
#: ../../docs/about/complying_with_licenses.rst:165
msgid "The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:44
#: ../../docs/about/complying_with_licenses.rst:137
#: ../../docs/about/complying_with_licenses.rst:50
#: ../../docs/about/complying_with_licenses.rst:167
msgid "THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:48
#: ../../docs/about/complying_with_licenses.rst:54
msgid "Your games do not need to be under the same license. You are free to release your Godot projects under any license and to create commercial games with the engine."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:53
#: ../../docs/about/complying_with_licenses.rst:59
msgid "Inclusion"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:55
#: ../../docs/about/complying_with_licenses.rst:61
msgid "The license does not specify how it has to be included, so anything is valid as long as it can be displayed under some condition. These are the most common approaches (only need to implement one of them, not all)."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:60
msgid "Credits screen"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:62
msgid "Include the above license text somewhere in the credits screen. It can be at the bottom after showing the rest of the credits. Most large studios use this approach with open source licenses."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:67
msgid "Licenses screen"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:69
msgid "Some games have a special menu (often in the settings) to display licenses."
msgid "Godot provides several methods to get license information in the Engine singleton. This allows you to source the license information directly from the engine binary, which prevents the information from becoming outdated if you update engine versions."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:72
msgid "Output log"
msgid "For the engine itself:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:74
msgid "Just printing the licensing text using the :ref:`print() <class_@GDScript_method_print>` function may be enough on platforms where a global output log is readable. This is the case on desktop platforms, Android and HTML5 (but not iOS and UWP)."
msgid ":ref:`Engine.get_license_text<class_Engine_method_get_license_text>`"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:76
msgid "For third-party components used by the engine:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:78
msgid ":ref:`Engine.get_license_info<class_Engine_method_get_license_info>`"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:79
msgid "Accompanying file"
msgid ":ref:`Engine.get_copyright_info<class_Engine_method_get_copyright_info>`"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:81
msgid "If the game is distributed on desktop platforms, a file containing the license can be added to the software that is installed to the user PC."
msgid "For miscellaneous engine contributor information. You don't have to include these ones in your project, but they're listed here for reference:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:84
msgid ":ref:`Engine.get_author_info<class_Engine_method_get_author_info>`"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:85
msgid "Printed manual"
msgid ":ref:`Engine.get_donor_info<class_Engine_method_get_donor_info>`"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:87
msgid "If the game includes printed manuals, license text can be included there."
#: ../../docs/about/complying_with_licenses.rst:88
msgid "Credits screen"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:90
msgid "Link to the license"
msgid "Include the above license text somewhere in the credits screen. It can be at the bottom after showing the rest of the credits. Most large studios use this approach with open source licenses."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:92
msgid "The Godot Engine developers consider that a link to ``godotengine.org/license`` in your game documentation or credits would be an acceptable way to satisfy the license terms."
#: ../../docs/about/complying_with_licenses.rst:95
msgid "Licenses screen"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:97
msgid "Third-party licenses"
msgid "Some games have a special menu (often in the settings) to display licenses. This menu is typically accessed with a button called **Third-party Licenses** or **Open Source Licenses**."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:99
msgid "Godot itself contains software written by `third parties <https://github.com/godotengine/godot/blob/master/COPYRIGHT.txt>`_. Most of it does not require license inclusion, but some do. Make sure to do it if these are compiled in your Godot export template. If you're using the official export templates, all libraries are enabled. This means you need to provide attribution for all the libraries listed below."
#: ../../docs/about/complying_with_licenses.rst:102
msgid "Output log"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:106
msgid "Here's a list of libraries requiring attribution:"
#: ../../docs/about/complying_with_licenses.rst:104
msgid "Printing the licensing text using the :ref:`print() <class_@GlobalScope_method_print>` function may be enough on platforms where a global output log is readable. This is the case on desktop platforms, Android and HTML5 (but not iOS and UWP)."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:109
msgid "FreeType"
msgid "Accompanying file"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:111
msgid "Godot uses `FreeType <https://www.freetype.org/>`_ to render fonts. Its license requires attribution, so the following text must be included together with the Godot license:"
msgid "If the game is distributed on desktop platforms, a file containing the license can be added to the software that is installed to the user PC."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:115
msgid "Portions of this software are copyright © <year> The FreeType Project (www.freetype.org). All rights reserved."
msgid "Printed manual"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:119
msgid "<year> should correspond to the value from the FreeType version used in your build. This information can be found in the editor by opening the **Help > About** dialog and going to the **Third-party Licenses** tab."
#: ../../docs/about/complying_with_licenses.rst:117
msgid "If the game includes printed manuals, license text can be included there."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:125
msgid "ENet"
#: ../../docs/about/complying_with_licenses.rst:120
msgid "Link to the license"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:122
msgid "The Godot Engine developers consider that a link to ``godotengine.org/license`` in your game documentation or credits would be an acceptable way to satisfy the license terms."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:127
msgid "Godot includes the `ENet <http://enet.bespin.org/>`_ library to handle high-level multiplayer. ENet has similar licensing terms as Godot:"
msgid "Third-party licenses"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:131
msgid "Copyright (c) 2002-2020 Lee Salzman"
#: ../../docs/about/complying_with_licenses.rst:129
msgid "Godot itself contains software written by `third parties <https://github.com/godotengine/godot/blob/master/COPYRIGHT.txt>`_. Most of it does not require license inclusion, but some do. Make sure to do it if these are compiled in your Godot export template. If you're using the official export templates, all libraries are enabled. This means you need to provide attribution for all the libraries listed below."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:140
msgid "mbed TLS"
#: ../../docs/about/complying_with_licenses.rst:136
msgid "Here's a list of libraries requiring attribution:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:142
msgid "If the project is exported with Godot 3.1 or later, it includes `mbed TLS <https://tls.mbed.org>`_. The Apache license needs to be complied to by including the following text:"
#: ../../docs/about/complying_with_licenses.rst:139
msgid "FreeType"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:141
msgid "Godot uses `FreeType <https://www.freetype.org/>`_ to render fonts. Its license requires attribution, so the following text must be included together with the Godot license:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:145
msgid "Copyright The Mbed TLS Contributors"
msgid "Portions of this software are copyright © <year> The FreeType Project (www.freetype.org). All rights reserved."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:147
msgid "Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at"
#: ../../docs/about/complying_with_licenses.rst:149
msgid "<year> should correspond to the value from the FreeType version used in your build. This information can be found in the editor by opening the **Help > About** dialog and going to the **Third-party Licenses** tab."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:151
msgid "http://www.apache.org/licenses/LICENSE-2.0"
#: ../../docs/about/complying_with_licenses.rst:155
msgid "ENet"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:153
msgid "Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License."
#: ../../docs/about/complying_with_licenses.rst:157
msgid "Godot includes the `ENet <http://enet.bespin.org/>`_ library to handle high-level multiplayer. ENet has similar licensing terms as Godot:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:161
msgid "Copyright (c) 2002-2020 Lee Salzman"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:170
msgid "mbed TLS"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:172
msgid "If the project is exported with Godot 3.1 or later, it includes `mbed TLS <https://tls.mbed.org>`_. The Apache license needs to be complied to by including the following text:"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:175
msgid "Copyright The Mbed TLS Contributors"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:177
msgid "Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:181
msgid "http://www.apache.org/licenses/LICENSE-2.0"
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:183
msgid "Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License."
msgstr ""
#: ../../docs/about/complying_with_licenses.rst:191
msgid "If you exported your project using a :ref:`custom build with specific modules disabled <doc_optimizing_for_size>`, you don't need to list the disabled modules' licenses in your exported project."
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -29,391 +29,379 @@ msgid "What can I do with Godot? How much does it cost? What are the license ter
msgstr ""
#: ../../docs/about/faq.rst:12
msgid "Godot is `Free and Open-Source Software <https://en.wikipedia.org/wiki/Free_and_open-source_software>`_ available under the `OSI-approved <https://opensource.org/licenses/MIT>`_ MIT license. This means it is free as in \"free speech\" as well as in \"free beer.\""
msgstr ""
#: ../../docs/about/faq.rst:14
msgid "In short:"
msgid "Godot is `Free and open source Software <https://en.wikipedia.org/wiki/Free_and_open source_software>`_ available under the `OSI-approved <https://opensource.org/licenses/MIT>`_ MIT license. This means it is free as in \"free speech\" as well as in \"free beer.\""
msgstr ""
#: ../../docs/about/faq.rst:16
msgid "In short:"
msgstr ""
#: ../../docs/about/faq.rst:18
msgid "You are free to download and use Godot for any purpose: personal, non-profit, commercial, or otherwise."
msgstr ""
#: ../../docs/about/faq.rst:17
#: ../../docs/about/faq.rst:19
msgid "You are free to modify, distribute, redistribute, and remix Godot to your heart's content, for any reason, both non-commercially and commercially."
msgstr ""
#: ../../docs/about/faq.rst:19
msgid "All the contents of this accompanying documentation are published under the permissive Creative Commons Attribution 3.0 (`CC-BY 3.0 <https://creativecommons.org/licenses/by/3.0/>`_) license, with attribution to \"Juan Linietsky, Ariel Manzur and the Godot Engine community.\""
#: ../../docs/about/faq.rst:22
msgid "All the contents of this accompanying documentation are published under the permissive Creative Commons Attribution 3.0 (`CC BY 3.0 <https://creativecommons.org/licenses/by/3.0/>`_) license, with attribution to \"Juan Linietsky, Ariel Manzur and the Godot Engine community.\""
msgstr ""
#: ../../docs/about/faq.rst:23
#: ../../docs/about/faq.rst:26
msgid "Logos and icons are generally under the same Creative Commons license. Note that some third-party libraries included with Godot's source code may have different licenses."
msgstr ""
#: ../../docs/about/faq.rst:27
#: ../../docs/about/faq.rst:30
msgid "For full details, look at the `COPYRIGHT.txt <https://github.com/godotengine/godot/blob/master/COPYRIGHT.txt>`_ as well as the `LICENSE.txt <https://github.com/godotengine/godot/blob/master/LICENSE.txt>`_ and `LOGO_LICENSE.txt <https://github.com/godotengine/godot/blob/master/LOGO_LICENSE.md>`_ files in the Godot repository."
msgstr ""
#: ../../docs/about/faq.rst:31
#: ../../docs/about/faq.rst:35
msgid "Also, see `the license page on the Godot website <https://godotengine.org/license>`_."
msgstr ""
#: ../../docs/about/faq.rst:34
#: ../../docs/about/faq.rst:38
msgid "Which platforms are supported by Godot?"
msgstr ""
#: ../../docs/about/faq.rst:36
#: ../../docs/about/faq.rst:40
msgid "**For the editor:**"
msgstr ""
#: ../../docs/about/faq.rst:38
#: ../../docs/about/faq.rst:202
#: ../../docs/about/faq.rst:42
#: ../../docs/about/faq.rst:203
msgid "Windows"
msgstr ""
#: ../../docs/about/faq.rst:39
#: ../../docs/about/faq.rst:47
#: ../../docs/about/faq.rst:213
#: ../../docs/about/faq.rst:43
#: ../../docs/about/faq.rst:51
#: ../../docs/about/faq.rst:214
msgid "macOS"
msgstr ""
#: ../../docs/about/faq.rst:40
#: ../../docs/about/faq.rst:48
msgid "X11 (Linux, \\*BSD)"
#: ../../docs/about/faq.rst:44
#: ../../docs/about/faq.rst:52
msgid "Linux, \\*BSD"
msgstr ""
#: ../../docs/about/faq.rst:41
msgid ":ref:`Web <doc_using_the_web_editor>`"
msgstr ""
#: ../../docs/about/faq.rst:42
#: ../../docs/about/faq.rst:45
msgid "Android (experimental)"
msgstr ""
#: ../../docs/about/faq.rst:44
#: ../../docs/about/faq.rst:46
msgid "`Web <https://editor.godotengine.org/>`__ (experimental)"
msgstr ""
#: ../../docs/about/faq.rst:48
msgid "**For exporting your games:**"
msgstr ""
#: ../../docs/about/faq.rst:46
#: ../../docs/about/faq.rst:50
msgid "Windows (and UWP)"
msgstr ""
#: ../../docs/about/faq.rst:49
#: ../../docs/about/faq.rst:53
msgid "Android"
msgstr ""
#: ../../docs/about/faq.rst:50
#: ../../docs/about/faq.rst:54
msgid "iOS"
msgstr ""
#: ../../docs/about/faq.rst:51
#: ../../docs/about/faq.rst:55
msgid "Web"
msgstr ""
#: ../../docs/about/faq.rst:53
msgid "Both 32- and 64-bit binaries are supported where it makes sense, with 64 being the default."
#: ../../docs/about/faq.rst:57
msgid "Both 32- and 64-bit binaries are supported where it makes sense, with 64 being the default. Official macOS builds support Apple Silicon natively as well as x86_64."
msgstr ""
#: ../../docs/about/faq.rst:56
#: ../../docs/about/faq.rst:60
msgid "Some users also report building and using Godot successfully on ARM-based systems with Linux, like the Raspberry Pi."
msgstr ""
#: ../../docs/about/faq.rst:59
msgid "Additionally, there is some unofficial third-party work being done on building for some consoles. However, none of this is included in the default build scripts or export templates at this time."
#: ../../docs/about/faq.rst:63
msgid "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 about :ref:`doc_consoles`."
msgstr ""
#: ../../docs/about/faq.rst:63
#: ../../docs/about/faq.rst:68
msgid "For more on this, see the sections on :ref:`exporting <toc-learn-workflow-export>` and :ref:`compiling Godot yourself <toc-devel-compiling>`."
msgstr ""
#: ../../docs/about/faq.rst:67
#: ../../docs/about/faq.rst:72
msgid "Which programming languages are supported in Godot?"
msgstr ""
#: ../../docs/about/faq.rst:69
msgid "The officially supported languages for Godot are GDScript, Visual Scripting, C#, and C++. See the subcategories for each language in the :ref:`scripting <toc-learn-scripting>` section."
#: ../../docs/about/faq.rst:74
msgid "The officially supported languages for Godot are GDScript, C#, and C++. See the subcategories for each language in the :ref:`scripting <toc-learn-scripting>` section."
msgstr ""
#: ../../docs/about/faq.rst:73
#: ../../docs/about/faq.rst:77
msgid "If you are just starting out with either Godot or game development in general, GDScript is the recommended language to learn and use since it is native to Godot. While scripting languages tend to be less performant than lower-level languages in the long run, for prototyping, developing Minimum Viable Products (MVPs), and focusing on Time-To-Market (TTM), GDScript will provide a fast, friendly, and capable way of developing your games."
msgstr ""
#: ../../docs/about/faq.rst:80
msgid "Note that C# support is still relatively new, and as such, you may encounter some issues along the way. Our friendly and hard-working development community is always ready to tackle new problems as they arise, but since this is an open-source project, we recommend that you first do some due diligence yourself. Searching through discussions on `open issues <https://github.com/godotengine/godot/issues>`_ is a great way to start your troubleshooting."
#: ../../docs/about/faq.rst:84
msgid "Note that C# support is still relatively new, and as such, you may encounter some issues along the way. C# support is also currently missing on Android, iOS and web platforms. Our friendly and hard-working development community is always ready to tackle new problems as they arise, but since this is an open source project, we recommend that you first do some due diligence yourself. Searching through discussions on `open issues <https://github.com/godotengine/godot/issues?q=is%3Aopen+is%3Aissue+label%3Atopic%3Adotnet>`__ is a great way to start your troubleshooting."
msgstr ""
#: ../../docs/about/faq.rst:87
msgid "As for new languages, support is possible via third parties using the GDNative / NativeScript / PluginScript facilities. (See the question about plugins below.) Work is currently underway, for example, on unofficial bindings for Godot to `Python <https://github.com/touilleMan/godot-python>`_ and `Nim <https://github.com/pragmagic/godot-nim>`_."
#: ../../docs/about/faq.rst:93
msgid "As for new languages, support is possible via third parties with GDExtensions. (See the question about plugins below). Work is currently underway, for example, on unofficial bindings for Godot to `Python <https://github.com/touilleMan/godot-python>`_ and `Nim <https://github.com/pragmagic/godot-nim>`_."
msgstr ""
#: ../../docs/about/faq.rst:95
#: ../../docs/about/faq.rst:100
msgid "What is GDScript and why should I use it?"
msgstr ""
#: ../../docs/about/faq.rst:97
msgid "GDScript is Godot's integrated scripting language. It was built from the ground up to maximize Godot's potential in the least amount of code, affording both novice and expert developers alike to capitalize on Godot's strengths as fast as possible. If you've ever written anything in a language like Python before then you'll feel right at home. For examples, history, and a complete overview of the power GDScript offers you, check out the :ref:`GDScript scripting guide <doc_gdscript>`."
#: ../../docs/about/faq.rst:102
msgid "GDScript is Godot's integrated scripting language. It was built from the ground up to maximize Godot's potential in the least amount of code, affording both novice and expert developers alike to capitalize on Godot's strengths as fast as possible. If you've ever written anything in a language like Python before, then you'll feel right at home. For examples and a complete overview of the power GDScript offers you, check out the :ref:`GDScript scripting guide <doc_gdscript>`."
msgstr ""
#: ../../docs/about/faq.rst:104
msgid "There are several reasons to use GDScript--especially when you are prototyping, in alpha/beta stages of your project, or are not creating the next AAA title--but the most salient reason is the overall **reduction of complexity**."
#: ../../docs/about/faq.rst:109
msgid "There are several reasons to use GDScript, especially when you are prototyping, in alpha/beta stages of your project, or are not creating the next AAA title. The most salient reason is the overall **reduction of complexity**."
msgstr ""
#: ../../docs/about/faq.rst:108
msgid "The original intent of creating a tightly integrated, custom scripting language for Godot was two-fold: first, it reduces the amount of time necessary to get up and running with Godot, giving developers a rapid way of exposing themselves to the engine with a focus on productivity; second, it reduces the overall burden of maintenance, attenuates the dimensionality of issues, and allows the developers of the engine to focus on squashing bugs and improving features related to the engine core--rather than spending a lot of time trying to get a small set of incremental features working across a large set of languages."
#: ../../docs/about/faq.rst:113
msgid "The original intent of creating a tightly integrated, custom scripting language for Godot was two-fold: first, it reduces the amount of time necessary to get up and running with Godot, giving developers a rapid way of exposing themselves to the engine with a focus on productivity; second, it reduces the overall burden of maintenance, attenuates the dimensionality of issues, and allows the developers of the engine to focus on squashing bugs and improving features related to the engine core, rather than spending a lot of time trying to get a small set of incremental features working across a large set of languages."
msgstr ""
#: ../../docs/about/faq.rst:116
msgid "Since Godot is an open-source project, it was imperative from the start to prioritize a more integrated and seamless experience over attracting additional users by supporting more familiar programming languages--especially when supporting those more familiar languages would result in a worse experience. We understand if you would rather use another language in Godot (see the list of supported options above). That being said, if you haven't given GDScript a try, try it for **three days**. Just like Godot, once you see how powerful it is and rapid your development becomes, we think GDScript will grow on you."
#: ../../docs/about/faq.rst:121
msgid "Since Godot is an open source project, it was imperative from the start to prioritize a more integrated and seamless experience over attracting additional users by supporting more familiar programming languages, especially when supporting those more familiar languages would result in a worse experience. We understand if you would rather use another language in Godot (see the list of supported options above). That being said, if you haven't given GDScript a try, try it for **three days**. Just like Godot, once you see how powerful it is and rapid your development becomes, we think GDScript will grow on you."
msgstr ""
#: ../../docs/about/faq.rst:125
#: ../../docs/about/faq.rst:130
msgid "More information about getting comfortable with GDScript or dynamically typed languages can be found in the :ref:`doc_gdscript_more_efficiently` tutorial."
msgstr ""
#: ../../docs/about/faq.rst:129
#: ../../docs/about/faq.rst:134
msgid "What were the motivations behind creating GDScript?"
msgstr ""
#: ../../docs/about/faq.rst:131
msgid "In the early days, the engine used the `Lua <https://www.lua.org>`__ scripting language. Lua is fast, but creating bindings to an object oriented system (by using fallbacks) was complex and slow and took an enormous amount of code. After some experiments with `Python <https://www.python.org>`__, it also proved difficult to embed."
#: ../../docs/about/faq.rst:136
msgid "In the early days, the engine used the `Lua <https://www.lua.org>`__ scripting language. Lua can be fast thanks to LuaJIT, but creating bindings to an object-oriented system (by using fallbacks) was complex and slow and took an enormous amount of code. After some experiments with `Python <https://www.python.org>`__, that also proved difficult to embed."
msgstr ""
#: ../../docs/about/faq.rst:137
#: ../../docs/about/faq.rst:142
msgid "The main reasons for creating a custom scripting language for Godot were:"
msgstr ""
#: ../../docs/about/faq.rst:139
#: ../../docs/about/faq.rst:144
msgid "Poor threading support in most script VMs, and Godot uses threads (Lua, Python, Squirrel, JavaScript, ActionScript, etc.)."
msgstr ""
#: ../../docs/about/faq.rst:141
#: ../../docs/about/faq.rst:146
msgid "Poor class-extending support in most script VMs, and adapting to the way Godot works is highly inefficient (Lua, Python, JavaScript)."
msgstr ""
#: ../../docs/about/faq.rst:143
msgid "Many existing languages have horrible interfaces for binding to C++, resulting in large amount of code, bugs, bottlenecks, and general inefficiency (Lua, Python, Squirrel, JavaScript, etc.) We wanted to focus on a great engine, not a great amount of integrations."
#: ../../docs/about/faq.rst:148
msgid "Many existing languages have horrible interfaces for binding to C++, resulting in a large amount of code, bugs, bottlenecks, and general inefficiency (Lua, Python, Squirrel, JavaScript, etc.). We wanted to focus on a great engine, not a great number of integrations."
msgstr ""
#: ../../docs/about/faq.rst:146
#: ../../docs/about/faq.rst:152
msgid "No native vector types (vector3, matrix4, etc.), resulting in highly reduced performance when using custom types (Lua, Python, Squirrel, JavaScript, ActionScript, etc.)."
msgstr ""
#: ../../docs/about/faq.rst:149
#: ../../docs/about/faq.rst:155
msgid "Garbage collector results in stalls or unnecessarily large memory usage (Lua, Python, JavaScript, ActionScript, etc.)."
msgstr ""
#: ../../docs/about/faq.rst:151
msgid "Difficulty to integrate with the code editor for providing code completion, live editing, etc. (all of them). This is well-supported by GDScript."
msgstr ""
#: ../../docs/about/faq.rst:155
msgid "GDScript was designed to curtail the issues above, and more."
msgstr ""
#: ../../docs/about/faq.rst:158
msgid "What type of 3D model formats does Godot support?"
#: ../../docs/about/faq.rst:157
msgid "Difficulty integrating with the code editor for providing code completion, live editing, etc. (all of them)."
msgstr ""
#: ../../docs/about/faq.rst:160
msgid "Godot supports Collada via the `OpenCollada <https://github.com/KhronosGroup/OpenCOLLADA/wiki/OpenCOLLADA-Tools>`_ exporter (Maya, 3DSMax). If you are using Blender, take a look at our own `Better Collada Exporter <https://godotengine.org/download>`_."
msgid "GDScript was designed to curtail the issues above, and more."
msgstr ""
#: ../../docs/about/faq.rst:163
msgid "As of Godot 3.0, glTF is supported."
msgid "What 3D model formats does Godot support?"
msgstr ""
#: ../../docs/about/faq.rst:165
msgid "FBX is supported via the Open Asset Import library. However, FBX is proprietary so we recommend using other formats listed above, if suitable for your workflow."
msgid "You can find detailed information on supported formats, how to export them from your 3D modeling software, and how to import them for Godot in the :ref:`doc_importing_3d_scenes` documentation."
msgstr ""
#: ../../docs/about/faq.rst:169
#: ../../docs/about/faq.rst:170
msgid "Will [insert closed SDK such as FMOD, GameWorks, etc.] be supported in Godot?"
msgstr ""
#: ../../docs/about/faq.rst:171
msgid "The aim of Godot is to create a free and open-source MIT-licensed engine that is modular and extendable. There are no plans for the core engine development community to support any third-party, closed-source/proprietary SDKs, as integrating with these would go against Godot's ethos."
#: ../../docs/about/faq.rst:172
msgid "The aim of Godot is to create a free and open source MIT-licensed engine that is modular and extendable. There are no plans for the core engine development community to support any third-party, closed-source/proprietary SDKs, as integrating with these would go against Godot's ethos."
msgstr ""
#: ../../docs/about/faq.rst:176
msgid "That said, because Godot is open-source and modular, nothing prevents you or anyone else interested in adding those libraries as a module and shipping your game with them--as either open- or closed-source."
#: ../../docs/about/faq.rst:177
msgid "That said, because Godot is open source and modular, nothing prevents you or anyone else interested in adding those libraries as a module and shipping your game with them, as either open- or closed-source."
msgstr ""
#: ../../docs/about/faq.rst:180
#: ../../docs/about/faq.rst:181
msgid "To see how support for your SDK of choice could still be provided, look at the Plugins question below."
msgstr ""
#: ../../docs/about/faq.rst:183
msgid "If you know of a third-party SDK that is not supported by Godot but that offers free and open-source integration, consider starting the integration work yourself. Godot is not owned by one person; it belongs to the community, and it grows along with ambitious community contributors like you."
#: ../../docs/about/faq.rst:184
msgid "If you know of a third-party SDK that is not supported by Godot but that offers free and open source integration, consider starting the integration work yourself. Godot is not owned by one person; it belongs to the community, and it grows along with ambitious community contributors like you."
msgstr ""
#: ../../docs/about/faq.rst:189
#: ../../docs/about/faq.rst:190
msgid "How do I install the Godot editor on my system (for desktop integration)?"
msgstr ""
#: ../../docs/about/faq.rst:191
#: ../../docs/about/faq.rst:192
msgid "Since you don't need to actually install Godot on your system to run it, this means desktop integration is not performed automatically. There are two ways to overcome this. You can install Godot from `Steam <https://store.steampowered.com/app/404790/Godot_Engine/>`__ (all platforms), `Scoop <https://scoop.sh/>`__ (Windows), `Homebrew <https://brew.sh/>`__ (macOS) or `Flathub <https://flathub.org/apps/details/org.godotengine.Godot>`__ (Linux). This will automatically perform the required steps for desktop integration."
msgstr ""
#: ../../docs/about/faq.rst:199
#: ../../docs/about/faq.rst:200
msgid "Alternatively, you can manually perform the steps that an installer would do for you:"
msgstr ""
#: ../../docs/about/faq.rst:204
#: ../../docs/about/faq.rst:205
msgid "Move the Godot executable to a stable location (i.e. outside of your Downloads folder), so you don't accidentally move it and break the shortcut in the future."
msgstr ""
#: ../../docs/about/faq.rst:206
#: ../../docs/about/faq.rst:207
msgid "Right-click the Godot executable and choose **Create Shortcut**."
msgstr ""
#: ../../docs/about/faq.rst:207
msgid "Move the created shortcut to ``%LOCALAPPDATA%\\Microsoft\\Windows\\Start Menu\\Programs``. This is the user-wide location for shortcuts that will appear in the Start menu. You can also pin Godot in the task bar by right-clicking the executable and choosing **Pin to Task Bar**."
#: ../../docs/about/faq.rst:208
msgid "Move the created shortcut to ``%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs``. This is the user-wide location for shortcuts that will appear in the Start menu. You can also pin Godot in the task bar by right-clicking the executable and choosing **Pin to Task Bar**."
msgstr ""
#: ../../docs/about/faq.rst:215
#: ../../docs/about/faq.rst:216
msgid "Drag the extracted Godot application to ``/Applications/Godot.app``, then drag it to the Dock if desired. Spotlight will be able to find Godot as long as it's in ``/Applications`` or ``~/Applications``."
msgstr ""
#: ../../docs/about/faq.rst:220
#: ../../docs/about/faq.rst:221
msgid "Linux"
msgstr ""
#: ../../docs/about/faq.rst:222
#: ../../docs/about/faq.rst:223
msgid "Move the Godot binary to a stable location (i.e. outside of your Downloads folder), so you don't accidentally move it and break the shortcut in the future."
msgstr ""
#: ../../docs/about/faq.rst:224
#: ../../docs/about/faq.rst:225
msgid "Rename and move the Godot binary to a location present in your ``PATH`` environment variable. This is typically ``/usr/local/bin/godot`` or ``/usr/bin/godot``. Doing this requires administrator privileges, but this also allows you to :ref:`run the Godot editor from a terminal <doc_command_line_tutorial>` by entering ``godot``."
msgstr ""
#: ../../docs/about/faq.rst:230
#: ../../docs/about/faq.rst:231
msgid "If you cannot move the Godot editor binary to a protected location, you can keep the binary somewhere in your home directory, and modify the ``Path=`` line in the ``.desktop`` file linked below to contain the full *absolute* path to the Godot binary."
msgstr ""
#: ../../docs/about/faq.rst:235
msgid "Save `this .desktop file <https://raw.githubusercontent.com/godotengine/godot/3.x/misc/dist/linux/org.godotengine.Godot.desktop>`__ to ``$HOME/.local/share/applications/``. If you have administrator privileges, you can also save the ``.desktop`` file to ``/usr/local/share/applications`` to make the shortcut available for all users."
#: ../../docs/about/faq.rst:236
msgid "Save `this .desktop file <https://raw.githubusercontent.com/godotengine/godot/master/misc/dist/linux/org.godotengine.Godot.desktop>`__ to ``$HOME/.local/share/applications/``. If you have administrator privileges, you can also save the ``.desktop`` file to ``/usr/local/share/applications`` to make the shortcut available for all users."
msgstr ""
#: ../../docs/about/faq.rst:241
#: ../../docs/about/faq.rst:242
msgid "Is the Godot editor a portable application?"
msgstr ""
#: ../../docs/about/faq.rst:243
#: ../../docs/about/faq.rst:244
msgid "In its default configuration, Godot is *semi-portable*. Its executable can run from any location (including non-writable locations) and never requires administrator privileges."
msgstr ""
#: ../../docs/about/faq.rst:247
#: ../../docs/about/faq.rst:248
msgid "However, configuration files will be written to the user-wide configuration or data directory. This is usually a good approach, but this means configuration files will not carry across machines if you copy the folder containing the Godot executable. See :ref:`doc_data_paths` for more information."
msgstr ""
#: ../../docs/about/faq.rst:252
#: ../../docs/about/faq.rst:253
msgid "If *true* portable operation is desired (e.g. for use on an USB stick), follow the steps in :ref:`doc_data_paths_self_contained_mode`."
msgstr ""
#: ../../docs/about/faq.rst:256
#: ../../docs/about/faq.rst:257
msgid "Why does Godot use Vulkan or OpenGL instead of Direct3D?"
msgstr ""
#: ../../docs/about/faq.rst:258
msgid "Godot aims for cross-platform compatibility and open standards first and foremost. OpenGL and Vulkan are the technologies that are both open and available (nearly) on all platforms. Thanks to this design decision, a project developed with Godot on Windows will run out of the box on Linux, macOS, and more."
#: ../../docs/about/faq.rst:259
msgid "Godot aims for cross-platform compatibility and open standards first and foremost. OpenGL and Vulkan are the technologies that are both open and available on (nearly) all platforms. Thanks to this design decision, a project developed with Godot on Windows will run out of the box on Linux, macOS, and more."
msgstr ""
#: ../../docs/about/faq.rst:264
#: ../../docs/about/faq.rst:265
msgid "Since Godot only has a few people working on its renderer, we would prefer having fewer rendering backends to maintain. On top of that, using a single API on all platforms allows for greater consistency with fewer platform-specific issues."
msgstr ""
#: ../../docs/about/faq.rst:269
msgid "In the long term, we may develop a Direct3D 12 renderer for Godot (mainly for the Xbox's purposes), but Vulkan and OpenGL will remain the default rendering backends on all platforms, including Windows."
#: ../../docs/about/faq.rst:270
msgid "In the long term, we may develop a Direct3D 12 renderer for Godot (mainly for Xbox), but Vulkan and OpenGL will remain the default rendering backends on all platforms, including Windows."
msgstr ""
#: ../../docs/about/faq.rst:274
#: ../../docs/about/faq.rst:275
msgid "Why does Godot aim to keep its core feature set small?"
msgstr ""
#: ../../docs/about/faq.rst:276
msgid "Godot intentionally does not include features that can be implemented by add-ons unless they are used very often. One example of this would be advanced artificial intelligence functionality."
#: ../../docs/about/faq.rst:277
msgid "Godot intentionally does not include features that can be implemented by add-ons unless they are used very often. One example of something not used often is advanced artificial intelligence functionality."
msgstr ""
#: ../../docs/about/faq.rst:280
#: ../../docs/about/faq.rst:281
msgid "There are several reasons for this:"
msgstr ""
#: ../../docs/about/faq.rst:282
msgid "**Code maintenance and surface for bugs.** Every time we accept new code in the Godot repository, existing contributors often take the reponsibility of maintaining it. Some contributors don't always stick around after getting their code merged, which can make it difficult for us to maintain the code in question. This can lead to poorly maintained features with bugs that are never fixed. On top of that, the \"API surface\" that needs to be tested and checked for regressions keeps increasing over time."
#: ../../docs/about/faq.rst:283
msgid "**Code maintenance and surface for bugs.** Every time we accept new code in the Godot repository, existing contributors often take the responsibility of maintaining it. Some contributors don't always stick around after getting their code merged, which can make it difficult for us to maintain the code in question. This can lead to poorly maintained features with bugs that are never fixed. On top of that, the \"API surface\" that needs to be tested and checked for regressions keeps increasing over time."
msgstr ""
#: ../../docs/about/faq.rst:290
#: ../../docs/about/faq.rst:291
msgid "**Ease of contribution.** By keeping the codebase small and tidy, it can remain fast and easy to compile from source. This makes it easier for new contributors to get started with Godot, without requiring them to purchase high-end hardware."
msgstr ""
#: ../../docs/about/faq.rst:295
#: ../../docs/about/faq.rst:296
msgid "**Keeping the binary size small for the editor.** Not everyone has a fast Internet connection. Ensuring that everyone can download the Godot editor, extract it and run it in less than 5 minutes makes Godot more accessible to developers in all countries."
msgstr ""
#: ../../docs/about/faq.rst:300
msgid "**Keeping the binary size small for export templates.** This directly impacts the size of projects exported with Godot. On mobile and web platforms, keeping file sizes low is primordial to ensure fast installation and loading on underpowered devices. Again, there are many countries where high-speed Internet is not readily available. To add to this, strict data usage caps are often in effect in those countries."
#: ../../docs/about/faq.rst:301
msgid "**Keeping the binary size small for export templates.** This directly impacts the size of projects exported with Godot. On mobile and web platforms, keeping file sizes low is important to ensure fast installation and loading on underpowered devices. Again, there are many countries where high-speed Internet is not readily available. To add to this, strict data usage caps are often in effect in those countries."
msgstr ""
#: ../../docs/about/faq.rst:307
#: ../../docs/about/faq.rst:308
msgid "For all the reasons above, we have to be selective of what we can accept as core functionality in Godot. This is why we are aiming to move some core functionality to officially supported add-ons in future versions of Godot. In terms of binary size, this also has the advantage of making you pay only for what you actually use in your project. (In the meantime, you can :ref:`compile custom export templates with unused features disabled <doc_optimizing_for_size>` to optimize the distribution size of your project.)"
msgstr ""
#: ../../docs/about/faq.rst:316
#: ../../docs/about/faq.rst:317
msgid "How should assets be created to handle multiple resolutions and aspect ratios?"
msgstr ""
#: ../../docs/about/faq.rst:318
#: ../../docs/about/faq.rst:319
msgid "This question pops up often and it's probably thanks to the misunderstanding created by Apple when they originally doubled the resolution of their devices. It made people think that having the same assets in different resolutions was a good idea, so many continued towards that path. That originally worked to a point and only for Apple devices, but then several Android and Apple devices with different resolutions and aspect ratios were created, with a very wide range of sizes and DPIs."
msgstr ""
#: ../../docs/about/faq.rst:326
#: ../../docs/about/faq.rst:327
msgid "The most common and proper way to achieve this is to, instead, use a single base resolution for the game and only handle different screen aspect ratios. This is mostly needed for 2D, as in 3D it's just a matter of Camera XFov or YFov."
msgstr ""
#: ../../docs/about/faq.rst:330
msgid "Choose a single base resolution for your game. Even if there are devices that go up to 2K and devices that go down to 400p, regular hardware scaling in your device will take care of this at little or no performance cost. Most common choices are either near 1080p (1920x1080) or 720p (1280x720). Keep in mind the higher the resolution, the larger your assets, the more memory they will take and the longer the time it will take for loading."
#: ../../docs/about/faq.rst:331
msgid "Choose a single base resolution for your game. Even if there are devices that go up to 2K and devices that go down to 400p, regular hardware scaling in your device will take care of this at little or no performance cost. The most common choices are either near 1080p (1920x1080) or 720p (1280x720). Keep in mind the higher the resolution, the larger your assets, the more memory they will take and the longer the time it will take for loading."
msgstr ""
#: ../../docs/about/faq.rst:338
#: ../../docs/about/faq.rst:339
msgid "Use the stretch options in Godot; 2D stretching while keeping aspect ratios works best. Check the :ref:`doc_multiple_resolutions` tutorial on how to achieve this."
msgstr ""
#: ../../docs/about/faq.rst:342
#: ../../docs/about/faq.rst:343
msgid "Determine a minimum resolution and then decide if you want your game to stretch vertically or horizontally for different aspect ratios, or if there is one aspect ratio and you want black bars to appear instead. This is also explained in :ref:`doc_multiple_resolutions`."
msgstr ""
#: ../../docs/about/faq.rst:347
#: ../../docs/about/faq.rst:348
msgid "For user interfaces, use the :ref:`anchoring <doc_size_and_anchors>` to determine where controls should stay and move. If UIs are more complex, consider learning about Containers."
msgstr ""
#: ../../docs/about/faq.rst:351
#: ../../docs/about/faq.rst:352
msgid "And that's it! Your game should work in multiple resolutions."
msgstr ""
#: ../../docs/about/faq.rst:353
#: ../../docs/about/faq.rst:354
msgid "If there is a desire to make your game also work on ancient devices with tiny screens (fewer than 300 pixels in width), you can use the export option to shrink images, and set that build to be used for certain screen sizes in the App Store or Google Play."
msgstr ""
#: ../../docs/about/faq.rst:359
#: ../../docs/about/faq.rst:360
msgid "How can I extend Godot?"
msgstr ""
#: ../../docs/about/faq.rst:361
#: ../../docs/about/faq.rst:362
msgid "For extending Godot, like creating Godot Editor plugins or adding support for additional languages, take a look at :ref:`EditorPlugins <doc_making_plugins>` and tool scripts."
msgstr ""
#: ../../docs/about/faq.rst:365
msgid "Also, see the official blog posts on these topics:"
msgstr ""
#: ../../docs/about/faq.rst:367
msgid "`A look at the GDNative architecture <https://godotengine.org/article/look-gdnative-architecture>`_"
#: ../../docs/about/faq.rst:366
msgid "Also, see the official blog post on GDExtension, a way to develop native extensions for Godot:"
msgstr ""
#: ../../docs/about/faq.rst:368
msgid "`GDNative is here! <https://godotengine.org/article/dlscript-here>`_"
msgid "`Introducing GDNative's successor, GDExtension <https://godotengine.org/article/introducing-gd-extensions>`_"
msgstr ""
#: ../../docs/about/faq.rst:370
@@ -429,190 +417,242 @@ msgid "When it's ready! See :ref:`doc_release_policy_when_is_next_release_out` f
msgstr ""
#: ../../docs/about/faq.rst:382
msgid "I would like to contribute! How can I get started?"
msgid "Which Godot version should I use for a new project?"
msgstr ""
#: ../../docs/about/faq.rst:384
msgid "Awesome! As an open-source project, Godot thrives off of the innovation and ambition of developers like you."
msgid "We recommend using Godot 4.x for new projects, but depending on the feature set you need, it may be better to use 3.x instead. See :ref:`doc_release_policy_which_version_should_i_use` for more information."
msgstr ""
#: ../../docs/about/faq.rst:387
msgid "The first place to get started is in the `issues <https://github.com/godotengine/godot/issues>`_. Find an issue that resonates with you, then proceed to the `How to Contribute <https://github.com/godotengine/godot/blob/master/CONTRIBUTING.md#contributing-pull-requests>`_ guide to learn how to fork, modify, and submit a Pull Request (PR) with your changes."
#: ../../docs/about/faq.rst:389
msgid "Should I upgrade my project to use new Godot versions?"
msgstr ""
#: ../../docs/about/faq.rst:392
msgid "I have a great idea for Godot. How can I share it?"
#: ../../docs/about/faq.rst:391
msgid "Some new versions are safer to upgrade to than others. In general, whether you should upgrade depends on your project's circumstances. See :ref:`doc_release_policy_should_i_upgrade_my_project` for more information."
msgstr ""
#: ../../docs/about/faq.rst:394
msgid "It might be tempting to want to bring ideas to Godot, like ones that result in massive core changes, some sort of mimicry of what another game engine does, or alternative workflows that you'd like built into the editor. These are great, and we are thankful to have such motivated people want to contribute, but Godot's focus is and always will be the core functionality as outlined in the `Roadmap <https://github.com/godotengine/godot-roadmap/blob/master/ROADMAP.md>`_, `squashing bugs and addressing issues <https://github.com/godotengine/godot/issues>`_, and conversations between Godot community members."
#: ../../docs/about/faq.rst:396
msgid "I would like to contribute! How can I get started?"
msgstr ""
#: ../../docs/about/faq.rst:403
msgid "Most developers in the Godot community will be more interested to learn about things like:"
#: ../../docs/about/faq.rst:398
msgid "Awesome! As an open source project, Godot thrives off of the innovation and the ambition of developers like you."
msgstr ""
#: ../../docs/about/faq.rst:406
msgid "Your experience using the software and the problems you have (we care about this much more than ideas on how to improve it)."
#: ../../docs/about/faq.rst:401
msgid "The best way to start contributing to Godot is by using it and reporting any `issues <https://github.com/godotengine/godot/issues>`_ that you might experience. A good bug report with clear reproduction steps helps your fellow contributors fix bugs quickly and efficiently. You can also report issues you find in the `online documentation <https://github.com/godotengine/godot-docs/issues>`_."
msgstr ""
#: ../../docs/about/faq.rst:408
msgid "The features you would like to see implemented because you need them for your project."
msgstr ""
#: ../../docs/about/faq.rst:410
msgid "The concepts that were difficult to understand while learning the software."
msgstr ""
#: ../../docs/about/faq.rst:411
msgid "The parts of your workflow you would like to see optimized."
#: ../../docs/about/faq.rst:407
msgid "If you feel ready to submit your first PR, pick any issue that resonates with you from one of the links above and try your hand at fixing it. You will need to learn how to compile the engine from sources, or how to build the documentation. You also need to get familiar with Git, a version control system that Godot developers use."
msgstr ""
#: ../../docs/about/faq.rst:412
msgid "Parts where you missed clear tutorials or where the documentation wasn't clear."
msgid "We explain how to work with the engine source, how to edit the documentation, and what other ways to contribute are there in our :ref:`documentation for contributors <doc_ways_to_contribute>`."
msgstr ""
#: ../../docs/about/faq.rst:414
msgid "Please don't feel like your ideas for Godot are unwelcome. Instead, try to reformulate them as a problem first, so developers and the community have a functional foundation to ground your ideas on."
#: ../../docs/about/faq.rst:416
msgid "I have a great idea for Godot. How can I share it?"
msgstr ""
#: ../../docs/about/faq.rst:418
msgid "A good way to approach sharing your ideas and problems with the community is as a set of user stories. Explain what you are trying to do, what behavior you expect to happen, and then what behavior actually happened. Framing problems and ideas this way will help the whole community stay focused on improving developer experiences as a whole."
msgid "We are always looking for suggestions about how to improve the engine. User feedback is the main driving force behind our decision-making process, and limitations that you might face while working on your project are a great data point for us when considering engine enhancements."
msgstr ""
#: ../../docs/about/faq.rst:424
msgid "Bonus points for bringing screenshots, concrete numbers, test cases, or example projects (if applicable)."
#: ../../docs/about/faq.rst:423
msgid "If you experience a usability problem or are missing a feature in the current version of Godot, start by discussing it with our `community <https://godotengine.org/community/>`_. There may be other, perhaps better, ways to achieve the desired result that community members could suggest. And you can learn if other users experience the same issue, and figure out a good solution together."
msgstr ""
#: ../../docs/about/faq.rst:430
msgid "Is it possible to use Godot to create non-game applications?"
msgstr ""
#: ../../docs/about/faq.rst:432
msgid "Yes! Godot features an extensive built-in UI system, and its small distribution size can make it a suitable alternative to frameworks like Electron or Qt."
#: ../../docs/about/faq.rst:429
msgid "If you come up with a well-defined idea for the engine, feel free to open a `proposal issue <https://github.com/godotengine/godot-proposals/issues>`_. Try to be specific and concrete while describing your problem and your proposed solution — only actionable proposals can be considered. It is not required, but if you want to implement it yourself, that's always appreciated!"
msgstr ""
#: ../../docs/about/faq.rst:435
msgid "When creating a non-game application, make sure to enable :ref:`low-processor mode <class_ProjectSettings_property_application/run/low_processor_mode>` in the Project Settings to decrease CPU and GPU usage."
msgid "If you only have a general idea without specific details, you can open a `proposal discussion <https://github.com/godotengine/godot-proposals/discussions>`_. These can be anything you want, and allow for a free-form discussion in search of a solution. Once you find one, a proposal issue can be opened."
msgstr ""
#: ../../docs/about/faq.rst:439
msgid "That said, we wouldn't recommend using Godot to create a *mobile* application since low-processor mode isn't supported on mobile platforms yet."
#: ../../docs/about/faq.rst:440
msgid "Please, read the `readme <https://github.com/godotengine/godot-proposals/blob/master/README.md>`_ document before creating a proposal to learn more about the process."
msgstr ""
#: ../../docs/about/faq.rst:442
msgid "Check out `Material Maker <https://github.com/RodZill4/material-maker>`__ and `Pixelorama <https://github.com/Orama-Interactive/Pixelorama>`__ for examples of open source applications made with Godot."
#: ../../docs/about/faq.rst:446
msgid "Is it possible to use Godot to create non-game applications?"
msgstr ""
#: ../../docs/about/faq.rst:449
msgid "Is it possible to use Godot as a library?"
#: ../../docs/about/faq.rst:448
msgid "Yes! Godot features an extensive built-in UI system, and its small distribution size can make it a suitable alternative to frameworks like Electron or Qt."
msgstr ""
#: ../../docs/about/faq.rst:451
msgid "When creating a non-game application, make sure to enable :ref:`low-processor mode <class_ProjectSettings_property_application/run/low_processor_mode>` in the Project Settings to decrease CPU and GPU usage."
msgstr ""
#: ../../docs/about/faq.rst:455
msgid "That said, we wouldn't recommend using Godot to create a *mobile* application since low-processor mode isn't supported on mobile platforms yet."
msgstr ""
#: ../../docs/about/faq.rst:458
msgid "Check out `Material Maker <https://github.com/RodZill4/material-maker>`__ and `Pixelorama <https://github.com/Orama-Interactive/Pixelorama>`__ for examples of open source applications made with Godot."
msgstr ""
#: ../../docs/about/faq.rst:465
msgid "Is it possible to use Godot as a library?"
msgstr ""
#: ../../docs/about/faq.rst:467
msgid "Godot is meant to be used with its editor. We recommend you give it a try, as it will most likely save you time in the long term. There are no plans to make Godot usable as a library, as it would make the rest of the engine more convoluted and difficult to use for casual users."
msgstr ""
#: ../../docs/about/faq.rst:456
#: ../../docs/about/faq.rst:472
msgid "If you want to use a rendering library, look into using an established rendering engine instead. Keep in mind rendering engines usually have smaller communities compared to Godot. This will make it more difficult to find answers to your questions."
msgstr ""
#: ../../docs/about/faq.rst:462
#: ../../docs/about/faq.rst:478
msgid "What user interface toolkit does Godot use?"
msgstr ""
#: ../../docs/about/faq.rst:464
#: ../../docs/about/faq.rst:480
msgid "Godot does not use a standard :abbr:`GUI (Graphical User Interface)` toolkit like GTK, Qt or wxWidgets. Instead, Godot uses its own user interface toolkit, rendered using OpenGL ES or Vulkan. This toolkit is exposed in the form of Control nodes, which are used to render the editor (which is written in C++). These Control nodes can also be used in projects from any scripting language supported by Godot."
msgstr ""
#: ../../docs/about/faq.rst:471
#: ../../docs/about/faq.rst:487
msgid "This custom toolkit makes it possible to benefit from hardware acceleration and have a consistent appearance across all platforms. On top of that, it doesn't have to deal with the LGPL licensing caveats that come with GTK or Qt. Lastly, this means Godot is \"eating its own dog food\" since the editor itself is one of the most complex users of Godot's UI system."
msgstr ""
#: ../../docs/about/faq.rst:477
#: ../../docs/about/faq.rst:493
msgid "This custom UI toolkit :ref:`can't be used as a library <doc_faq_use_godot_as_library>`, but you can still :ref:`use Godot to create non-game applications by using the editor <doc_faq_non_game_applications>`."
msgstr ""
#: ../../docs/about/faq.rst:484
msgid "Why does Godot not use STL (Standard Template Library)?"
#: ../../docs/about/faq.rst:500
msgid "Why does Godot use the SCons build system?"
msgstr ""
#: ../../docs/about/faq.rst:486
msgid "Like many other libraries (Qt as an example), Godot does not make use of STL. We believe STL is a great general purpose library, but we had special requirements for Godot."
#: ../../docs/about/faq.rst:502
msgid "Godot uses the `SCons <https://www.scons.org/>`__ build system. There are no plans to switch to a different build system in the near future. There are many reasons why we have chosen SCons over other alternatives. For example:"
msgstr ""
#: ../../docs/about/faq.rst:490
msgid "STL templates create very large symbols, which results in huge debug binaries. We use few templates with very short names instead."
msgstr ""
#: ../../docs/about/faq.rst:491
msgid "Most of our containers cater to special needs, like Vector, which uses copy on write and we use to pass data around, or the RID system, which requires O(1) access time for performance. Likewise, our hash map implementations are designed to integrate seamlessly with internal engine types."
msgstr ""
#: ../../docs/about/faq.rst:492
msgid "Our containers have memory tracking built-in, which helps better track memory usage."
msgstr ""
#: ../../docs/about/faq.rst:493
msgid "For large arrays, we use pooled memory, which can be mapped to either a preallocated buffer or virtual memory."
msgstr ""
#: ../../docs/about/faq.rst:494
msgid "We use our custom String type, as the one provided by STL is too basic and lacks proper internationalization support."
msgstr ""
#: ../../docs/about/faq.rst:497
msgid "Why does Godot not use exceptions?"
msgstr ""
#: ../../docs/about/faq.rst:499
msgid "We believe games should not crash, no matter what. If an unexpected situation happens, Godot will print an error (which can be traced even to script), but then it will try to recover as gracefully as possible and keep going."
msgstr ""
#: ../../docs/about/faq.rst:504
msgid "Additionally, exceptions significantly increase binary size for the executable."
#: ../../docs/about/faq.rst:506
msgid "Godot can be compiled for a dozen different platforms: all PC platforms, all mobile platforms, many consoles, and WebAssembly."
msgstr ""
#: ../../docs/about/faq.rst:508
msgid "Why does Godot not enforce RTTI?"
msgid "Developers often need to compile for several of the platforms **at the same time**, or even different targets of the same platform. They can't afford reconfiguring and rebuilding the project each time. SCons can do this with no sweat, without breaking the builds."
msgstr ""
#: ../../docs/about/faq.rst:510
msgid "Godot provides its own type-casting system, which can optionally use RTTI internally. Disabling RTTI in Godot means considerably smaller binary sizes can be achieved, at a little performance cost."
#: ../../docs/about/faq.rst:512
msgid "SCons will *never* break a build no matter how many changes, configurations, additions, removals etc."
msgstr ""
#: ../../docs/about/faq.rst:515
msgid "Why does Godot not force users to implement DoD (Data oriented Design)?"
#: ../../docs/about/faq.rst:514
msgid "Godot's build process is not simple. Several files are generated by code (binders), others are parsed (shaders), and others need to offer customization (:ref:`modules <doc_custom_modules_in_cpp>`). This requires complex logic which is easier to write in an actual programming language (like Python) rather than using a mostly macro-based language only meant for building."
msgstr ""
#: ../../docs/about/faq.rst:517
msgid "While Godot internally for a lot of the heavy performance tasks attempts to use cache coherency as well as possible, we believe most users don't really need to be forced to use DoD practices."
#: ../../docs/about/faq.rst:519
msgid "Godot build process makes heavy use of cross-compiling tools. Each platform has a specific detection process, and all these must be handled as specific cases with special code written for each."
msgstr ""
#: ../../docs/about/faq.rst:521
msgid "DoD is mostly a cache coherency optimization that can only gain you significant performance improvements when dealing with dozens of thousands of objects (which are processed every frame with little modification). As in, if you are moving a few hundred sprites or enemies per frame, DoD won't help you, and you should consider a different approach to optimization."
#: ../../docs/about/faq.rst:523
msgid "Please try to keep an open mind and get at least a little familiar with SCons if you are planning to build Godot yourself."
msgstr ""
#: ../../docs/about/faq.rst:528
msgid "The vast majority of games do not need this and Godot provides handy helpers to do the job for most cases when you do."
#: ../../docs/about/faq.rst:529
msgid "Why does Godot not use STL (Standard Template Library)?"
msgstr ""
#: ../../docs/about/faq.rst:531
msgid "If a game that really needs to process such large amount of objects is needed, our recommendation is to use C++ and GDNative for the high performance parts and GDScript (or C#) for the rest of the game."
msgid "Like many other libraries (Qt as an example), Godot does not make use of STL. We believe STL is a great general-purpose library, but we had special requirements for Godot."
msgstr ""
#: ../../docs/about/faq.rst:536
msgid "How can I support Godot development or contribute?"
#: ../../docs/about/faq.rst:535
msgid "STL templates create very large symbols, which results in huge debug binaries. We use few templates with very short names instead."
msgstr ""
#: ../../docs/about/faq.rst:538
msgid "See :ref:`doc_ways_to_contribute`."
#: ../../docs/about/faq.rst:537
msgid "Most of our containers cater to special needs, like Vector, which uses copy on write and we use to pass data around, or the RID system, which requires O(1) access time for performance. Likewise, our hash map implementations are designed to integrate seamlessly with internal engine types."
msgstr ""
#: ../../docs/about/faq.rst:541
msgid "Our containers have memory tracking built-in, which helps better track memory usage."
msgstr ""
#: ../../docs/about/faq.rst:542
msgid "For large arrays, we use pooled memory, which can be mapped to either a preallocated buffer or virtual memory."
msgstr ""
#: ../../docs/about/faq.rst:544
msgid "We use our custom String type, as the one provided by STL is too basic and lacks proper internationalization support."
msgstr ""
#: ../../docs/about/faq.rst:548
msgid "Why does Godot not use exceptions?"
msgstr ""
#: ../../docs/about/faq.rst:550
msgid "We believe games should not crash, no matter what. If an unexpected situation happens, Godot will print an error (which can be traced even to script), but then it will try to recover as gracefully as possible and keep going."
msgstr ""
#: ../../docs/about/faq.rst:555
msgid "Additionally, exceptions significantly increase the binary size for the executable."
msgstr ""
#: ../../docs/about/faq.rst:559
msgid "Why does Godot not enforce RTTI?"
msgstr ""
#: ../../docs/about/faq.rst:561
msgid "Godot provides its own type-casting system, which can optionally use RTTI internally. Disabling RTTI in Godot means considerably smaller binary sizes can be achieved, at a little performance cost."
msgstr ""
#: ../../docs/about/faq.rst:566
msgid "Does Godot use an ECS (Entity Component System)?"
msgstr ""
#: ../../docs/about/faq.rst:568
msgid "Godot does **not** use an ECS and relies on inheritance instead. While there is no universally better approach, we found that using an inheritance-based approach resulted in better usability while still being fast enough for most use cases."
msgstr ""
#: ../../docs/about/faq.rst:572
msgid "That said, nothing prevents you from making use of composition in your project by creating child Nodes with individual scripts. These nodes can then be added and removed at run-time to dynamically add and remove behaviors."
msgstr ""
#: ../../docs/about/faq.rst:576
msgid "More information about Godot's design choices can be found in `this article <https://godotengine.org/article/why-isnt-godot-ecs-based-game-engine>`__."
msgstr ""
#: ../../docs/about/faq.rst:580
msgid "Why does Godot not force users to implement DOD (Data-Oriented Design)?"
msgstr ""
#: ../../docs/about/faq.rst:582
msgid "While Godot internally attempts to use cache coherency as much as possible, we believe users don't need to be forced to use DOD practices."
msgstr ""
#: ../../docs/about/faq.rst:585
msgid "DOD is mostly a cache coherency optimization that can only provide significant performance improvements when dealing with dozens of thousands of objects which are processed every frame with little modification. That is, if you are moving a few hundred sprites or enemies per frame, DOD won't result in a meaningful improvement in performance. In such a case, you should consider a different approach to optimization."
msgstr ""
#: ../../docs/about/faq.rst:592
msgid "The vast majority of games do not need this and Godot provides handy helpers to do the job for most cases when you do."
msgstr ""
#: ../../docs/about/faq.rst:595
msgid "If a game needs to process such a large amount of objects, our recommendation is to use C++ and GDExtensions for performance-heavy tasks and GDScript (or C#) for the rest of the game."
msgstr ""
#: ../../docs/about/faq.rst:600
msgid "How can I support Godot development or contribute?"
msgstr ""
#: ../../docs/about/faq.rst:602
msgid "See :ref:`doc_ways_to_contribute`."
msgstr ""
#: ../../docs/about/faq.rst:605
msgid "Who is working on Godot? How can I contact you?"
msgstr ""
#: ../../docs/about/faq.rst:543
#: ../../docs/about/faq.rst:607
msgid "See the corresponding page on the `Godot website <https://godotengine.org/contact>`_."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -21,11 +21,11 @@ msgid "Introduction"
msgstr ""
#: ../../docs/about/introduction.rst:11
msgid "Welcome to the official documentation of Godot Engine, the free and open source community-driven 2D and 3D game engine! Behind this mouthful, you will find a powerful yet user-friendly tool that you can use to develop any kind of game, for any platform and with no usage restriction whatsoever."
msgid "Welcome to the official documentation of **Godot Engine**, the free and open source community-driven 2D and 3D game engine! Behind this mouthful, you will find a powerful yet user-friendly tool that you can use to develop any kind of game, for any platform and with no usage restriction whatsoever."
msgstr ""
#: ../../docs/about/introduction.rst:16
msgid "This page gives a broad presentation of the engine and of the contents of this documentation, so that you know where to start if you are a beginner or where to look if you need info on a specific feature."
msgid "This page gives a broad overview of the engine and of this documentation, so that you know where to start if you are a beginner or where to look if you need information on a specific feature."
msgstr ""
#: ../../docs/about/introduction.rst:21
@@ -33,87 +33,79 @@ msgid "Before you start"
msgstr ""
#: ../../docs/about/introduction.rst:23
msgid "The :ref:`Tutorials and resources <doc_community_tutorials>` page lists video tutorials contributed by the community. If you prefer video to text, those may be worth a look."
msgid "The :ref:`Tutorials and resources <doc_community_tutorials>` page lists video tutorials contributed by the community. If you prefer video to text, consider checking them out. Otherwise, :ref:`Getting Started <sec-learn>` is a great starting point."
msgstr ""
#: ../../docs/about/introduction.rst:27
msgid "In case you have trouble with one of the tutorials or your project, you can find help on the various :ref:`Community channels <doc_community_channels>`, especially the Godot Discord community, Q&A, and IRC."
msgstr ""
#: ../../docs/about/introduction.rst:32
msgid "About Godot Engine"
#: ../../docs/about/introduction.rst:28
msgid "In case you have trouble with one of the tutorials or your project, you can find help on the various :ref:`Community channels <doc_community_channels>`, especially the Godot `Discord`_ community and `Q&A <https://godotengine.org/qa/>`_."
msgstr ""
#: ../../docs/about/introduction.rst:34
msgid "A game engine is a complex tool, and it is therefore difficult to present Godot in a few words. Here's a quick synopsis, which you are free to reuse if you need a quick writeup about Godot Engine."
msgid "About Godot Engine"
msgstr ""
#: ../../docs/about/introduction.rst:38
msgid "Godot Engine is a feature-packed, cross-platform game engine to create 2D and 3D games from a unified interface. It provides a comprehensive set of common tools, so users can focus on making games without having to reinvent the wheel. Games can be exported in one click to a number of platforms, including the major desktop platforms (Linux, macOS, Windows) as well as mobile (Android, iOS) and web-based (HTML5) platforms."
#: ../../docs/about/introduction.rst:36
msgid "A game engine is a complex tool and difficult to present in a few words. Here's a quick synopsis, which you are free to reuse if you need a quick write-up about Godot Engine:"
msgstr ""
#: ../../docs/about/introduction.rst:45
msgid "Godot is completely free and open source under the permissive MIT license. No strings attached, no royalties, nothing. Users' games are theirs, down to the last line of engine code. Godot's development is fully independent and community-driven, empowering users to help shape their engine to match their expectations. It is supported by the `Software Freedom Conservancy <https://sfconservancy.org>`_ not-for-profit."
#: ../../docs/about/introduction.rst:40
msgid "Godot Engine is a feature-packed, cross-platform game engine to create 2D and 3D games from a unified interface. It provides a comprehensive set of common tools, so that users can focus on making games without having to reinvent the wheel. Games can be exported with one click to a number of platforms, including the major desktop platforms (Linux, macOS, Windows), mobile platforms (Android, iOS), as well as Web-based platforms and consoles."
msgstr ""
#: ../../docs/about/introduction.rst:52
msgid "For a more in-depth view of the engine, you are encouraged to read this documentation further, especially the :ref:`Step by step <toc-learn-step_by_step>` tutorial."
#: ../../docs/about/introduction.rst:47
msgid "Godot is completely free and open source under the :ref:`permissive MIT license <doc_complying_with_licenses>`. No strings attached, no royalties, nothing. Users' games are theirs, down to the last line of engine code. Godot's development is fully independent and community-driven, empowering users to help shape their engine to match their expectations. It is supported by the `Godot Foundation <https://godot.foundation/>`_ not-for-profit."
msgstr ""
#: ../../docs/about/introduction.rst:57
msgid "About the documentation"
msgstr ""
#: ../../docs/about/introduction.rst:59
msgid "This documentation is continuously written, corrected, edited, and revamped by members of the Godot Engine community. It is edited via text files in the `reStructuredText <http://www.sphinx-doc.org/en/stable/rest.html>`_ markup language and then compiled into a static website/offline document using the open source `Sphinx <http://www.sphinx-doc.org>`_ and `ReadTheDocs <https://readthedocs.org/>`_ tools."
msgstr ""
#: ../../docs/about/introduction.rst:66
msgid "You can contribute to Godot's documentation by opening issue tickets or sending patches via pull requests on its GitHub `source repository <https://github.com/godotengine/godot-docs>`_, or translating it into your language on `Hosted Weblate <https://hosted.weblate.org/projects/godot-engine/godot-docs/>`_."
msgstr ""
#: ../../docs/about/introduction.rst:72
msgid "All the contents are under the permissive Creative Commons Attribution 3.0 (`CC-BY 3.0 <https://creativecommons.org/licenses/by/3.0/>`_) license, with attribution to \"Juan Linietsky, Ariel Manzur and the Godot Engine community\"."
msgstr ""
#: ../../docs/about/introduction.rst:77
msgid "Organization of the documentation"
msgstr ""
#: ../../docs/about/introduction.rst:79
msgid "This documentation is organized in five sections with an impressively unbalanced distribution of contents but the way it is split up should be relatively intuitive:"
#: ../../docs/about/introduction.rst:59
msgid "This documentation is organized into several sections:"
msgstr ""
#: ../../docs/about/introduction.rst:83
msgid "The :ref:`sec-general` section contains this introduction as well as information about the engine, its history, its licensing, authors, etc. It also contains the :ref:`doc_faq`."
#: ../../docs/about/introduction.rst:61
msgid "**About** contains this introduction as well as information about the engine, its history, its licensing, authors, etc. It also contains the :ref:`doc_faq`."
msgstr ""
#: ../../docs/about/introduction.rst:86
msgid "The :ref:`sec-learn` section is the *raison d'être* of this documentation, as it contains all the necessary information on using the engine to make games. It starts with the :ref:`Step by step <toc-learn-step_by_step>` tutorial which should be the entry point for all new users."
#: ../../docs/about/introduction.rst:64
msgid "**Getting Started** contains all necessary information on using the engine to make games. It starts with the :ref:`Step by step <toc-learn-step_by_step>` tutorial which should be the entry point for all new users. **This is the best place to start if you're new!**"
msgstr ""
#: ../../docs/about/introduction.rst:68
msgid "The **Manual** can be read or referenced as needed, in any order. It contains feature-specific tutorials and documentation."
msgstr ""
#: ../../docs/about/introduction.rst:70
msgid "**Contributing** gives information related to contributing to Godot, whether to the core engine, documentation, demos or other parts. It describes how to report bugs, how contributor workflows are organized, etc. It also contains sections intended for advanced users and contributors, with information on compiling the engine, contributing to the editor, or developing C++ modules."
msgstr ""
#: ../../docs/about/introduction.rst:76
msgid "**Community** is dedicated to the life of Godot's community. It points to various community channels like the `Godot Contributors Chat <https://chat.godotengine.org/>`_ and `Discord`_ and contains a list of recommended third-party tutorials and materials outside of this documentation."
msgstr ""
#: ../../docs/about/introduction.rst:81
msgid "Finally, the **Class reference** documents the full Godot API, also available directly within the engine's script editor. You can find information on all classes, functions, signals and so on here."
msgstr ""
#: ../../docs/about/introduction.rst:85
msgid "In addition to this documentation, you may also want to take a look at the various `Godot demo projects <https://github.com/godotengine/godot-demo-projects>`_."
msgstr ""
#: ../../docs/about/introduction.rst:89
msgid "About this documentation"
msgstr ""
#: ../../docs/about/introduction.rst:91
msgid "The :ref:`sec-tutorials` section can be read as needed, in any order. It contains feature-specific tutorials and documentation."
msgid "Members of the Godot Engine community continuously write, correct, edit, and improve this documentation. We are always looking for more help. You can also contribute by opening Github issues or translating the documentation into your language. If you are interested in helping, see :ref:`Ways to contribute <doc_ways_to_contribute>` and :ref:`Writing documentation <doc_contributing_writing_documentation>`, or get in touch with the `Documentation team <https://godotengine.org/teams/#documentation>`_ on `Godot Contributors Chat <https://chat.godotengine.org/>`_."
msgstr ""
#: ../../docs/about/introduction.rst:93
msgid "The :ref:`sec-devel` section is intended for advanced users and contributors to the engine development, with information on compiling the engine, developing C++ modules or editor plugins."
#: ../../docs/about/introduction.rst:99
msgid "All documentation content is licensed under the permissive Creative Commons Attribution 3.0 (`CC BY 3.0 <https://creativecommons.org/licenses/by/3.0/>`_) license, with attribution to \"*Juan Linietsky, Ariel Manzur, and the Godot Engine community*\" unless otherwise noted."
msgstr ""
#: ../../docs/about/introduction.rst:96
msgid "The :ref:`sec-community` section gives information related to contributing to engine development and the life of its community, e.g. how to report bugs, help with the documentation, etc. It also points to various community channels like IRC and Discord and contains a list of recommended third-party tutorials outside of this documentation."
msgstr ""
#: ../../docs/about/introduction.rst:101
msgid "Finally, the :ref:`sec-class-ref` is the documentation of the Godot API, which is also available directly within the engine's script editor. It is generated automatically from a file in the main source repository, therefore the generated files of the documentation are not meant to be modified. See :ref:`doc_updating_the_class_reference` for details."
msgstr ""
#: ../../docs/about/introduction.rst:107
msgid "In addition to this documentation you may also want to take a look at the various `Godot demo projects <https://github.com/godotengine/godot-demo-projects>`_."
msgstr ""
#: ../../docs/about/introduction.rst:110
msgid "Have fun reading and making games with Godot Engine!"
#: ../../docs/about/introduction.rst:104
msgid "*Have fun reading and making games with Godot Engine!*"
msgstr ""
#: ../../docs/<rst_epilog>:0

File diff suppressed because it is too large Load Diff

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -21,7 +21,7 @@ msgid "Godot release policy"
msgstr ""
#: ../../docs/about/release_policy.rst:6
msgid "Godot's release policy is in constant evolution. What is described below is intended to give a general idea of what to expect, but what will actually happen depends on the choices of core contributors, and the needs of the community at a given time."
msgid "Godot's release policy is in constant evolution. The description below provides a general idea of what to expect, but what will actually happen depends on the choices of core contributors and the needs of the community at a given time."
msgstr ""
#: ../../docs/about/release_policy.rst:12
@@ -37,79 +37,75 @@ msgid "The ``major`` version is incremented when major compatibility breakages h
msgstr ""
#: ../../docs/about/release_policy.rst:22
msgid "For example, porting Godot projects from Godot 2.1 to Godot 3.0 required running the project through a conversion tool, and then performing a number of further adjustments manually for what the tool could not do automatically."
msgid "For example, porting Godot projects from Godot 3.x to Godot 4.x requires running the project through a conversion tool, and then performing a number of further adjustments manually for what the tool could not do automatically."
msgstr ""
#: ../../docs/about/release_policy.rst:26
msgid "The ``minor`` version is incremented for feature releases which do not break compatibility in a major way. Minor compatibility breakage in very specific areas *may* happen in minor versions, but the vast majority of projects should not be affected or require significant porting work."
msgid "The ``minor`` version is incremented for feature releases that do not break compatibility in a major way. Minor compatibility breakage in very specific areas *may* happen in minor versions, but the vast majority of projects should not be affected or require significant porting work."
msgstr ""
#: ../../docs/about/release_policy.rst:31
msgid "The reason for this is that as a game engine, Godot covers many areas such as rendering, physics, scripting, etc., and fixing bugs or implementing new features in a given area may sometimes require changing the behavior of a feature, or modifying the interface of a given class, even if the rest of the engine API remains backwards compatible."
msgid "This is because Godot, as a game engine, covers many areas like rendering, physics, and scripting. Fixing bugs or implementing new features in one area might sometimes require changing a feature's behavior or modifying a class's interface, even if the rest of the engine API remains backwards compatible."
msgstr ""
#: ../../docs/about/release_policy.rst:39
msgid "Upgrading to a new minor version is therefore recommended for all users, but some testing is necessary to ensure that your project still behaves as expected in a new minor version."
#: ../../docs/about/release_policy.rst:38
msgid "Upgrading to a new minor version is recommended for all users, but some testing is necessary to ensure that your project still behaves as expected."
msgstr ""
#: ../../docs/about/release_policy.rst:43
#: ../../docs/about/release_policy.rst:42
msgid "The ``patch`` version is incremented for maintenance releases which focus on fixing bugs and security issues, implementing new requirements for platform support, and backporting safe usability enhancements. Patch releases are backwards compatible."
msgstr ""
#: ../../docs/about/release_policy.rst:48
#: ../../docs/about/release_policy.rst:47
msgid "Patch versions may include minor new features which do not impact the existing API, and thus have no risk of impacting existing projects."
msgstr ""
#: ../../docs/about/release_policy.rst:53
#: ../../docs/about/release_policy.rst:52
msgid "Updating to new patch versions is therefore considered safe and strongly recommended to all users of a given stable branch."
msgstr ""
#: ../../docs/about/release_policy.rst:56
msgid "We call ``major.minor`` combinations *stable branches*. Each stable branch starts with a ``major.minor`` release (without the ``0`` for ``patch``) and is further developed for maintenance releases in a Git branch of the same name (for example patch updates for the 3.3 stable branch are developed in the ``3.3`` Git branch)."
#: ../../docs/about/release_policy.rst:55
msgid "We call ``major.minor`` combinations *stable branches*. Each stable branch starts with a ``major.minor`` release (without the ``0`` for ``patch``) and is further developed for maintenance releases in a Git branch of the same name (for example patch updates for the 4.0 stable branch are developed in the ``4.0`` Git branch)."
msgstr ""
#: ../../docs/about/release_policy.rst:64
msgid "As mentioned in the introduction, Godot's release policy is evolving, and earlier Godot releases may not have followed the above rules to the letter. In particular, the 3.2 stable branch received a number of new features in 3.2.2 which would have warranted a ``minor`` version increment."
msgstr ""
#: ../../docs/about/release_policy.rst:70
#: ../../docs/about/release_policy.rst:62
msgid "Release support timeline"
msgstr ""
#: ../../docs/about/release_policy.rst:72
msgid "Stable branches are supported *at minimum* until the next stable branch is released and has received its first patch update. In practice, we support stable branches on a *best effort* basis for as long as they have active users who need maintenance updates."
#: ../../docs/about/release_policy.rst:64
msgid "Stable branches are supported *at least* until the next stable branch is released and has received its first patch update. In practice, we support stable branches on a *best effort* basis for as long as they have active users who need maintenance updates."
msgstr ""
#: ../../docs/about/release_policy.rst:77
msgid "Whenever a new major version is released, we make the previous stable branch a long-term supported release, and do our best to provide fixes for issues encountered by users of that branch who cannot port complex projects to the new major version. This was the case for the 2.1 branch, and will be the case for the latest 3.x stable branch by the time Godot 4.0 is released."
#: ../../docs/about/release_policy.rst:69
msgid "Whenever a new major version is released, we make the previous stable branch a long-term supported release, and do our best to provide fixes for issues encountered by users of that branch who cannot port complex projects to the new major version. This was the case for the 2.1 branch, and is the case for the 3.6 branch."
msgstr ""
#: ../../docs/about/release_policy.rst:83
#: ../../docs/about/release_policy.rst:75
msgid "In a given minor release series, only the latest patch release receives support. If you experience an issue using an older patch release, please upgrade to the latest patch release of that series and test again before reporting an issue on GitHub."
msgstr ""
#: ../../docs/about/release_policy.rst:89
#: ../../docs/about/release_policy.rst:81
msgid "**Version**"
msgstr ""
#: ../../docs/about/release_policy.rst:89
#: ../../docs/about/release_policy.rst:81
msgid "**Release date**"
msgstr ""
#: ../../docs/about/release_policy.rst:89
#: ../../docs/about/release_policy.rst:81
msgid "**Support level**"
msgstr ""
#: ../../docs/about/release_policy.rst:91
msgid "Godot 4.0"
#: ../../docs/about/release_policy.rst:83
msgid "Godot 4.2 (`master`)"
msgstr ""
#: ../../docs/about/release_policy.rst:91
msgid "Q1 2023 (estimate)"
#: ../../docs/about/release_policy.rst:83
msgid "November 2023 (estimate)"
msgstr ""
#: ../../docs/about/release_policy.rst:91
msgid "|unstable| *Beta.* Current focus of development (unstable)."
#: ../../docs/about/release_policy.rst:83
msgid "|unstable| *Development.* Receives new features, usability and performance improvements, as well as bug fixes, while under development."
msgstr ""
#: ../../docs/about/release_policy.rst:122
@@ -118,65 +114,67 @@ msgstr ""
msgid "unstable"
msgstr ""
#: ../../docs/about/release_policy.rst:93
msgid "Godot 3.6 (LTS)"
#: ../../docs/about/release_policy.rst:86
msgid "Godot 4.1"
msgstr ""
#: ../../docs/about/release_policy.rst:93
msgid "Q1-Q2 2023 (estimate)"
#: ../../docs/about/release_policy.rst:86
msgid "July 2023"
msgstr ""
#: ../../docs/about/release_policy.rst:93
msgid "|supported| *Beta.* Receives new features as well as bug fixes while under development. Will be released *after* 4.0."
#: ../../docs/about/release_policy.rst:86
#: ../../docs/about/release_policy.rst:89
#: ../../docs/about/release_policy.rst:95
msgid "|supported| Receives fixes for bugs and security issues, as well as patches that enable platform support."
msgstr ""
#: ../../docs/about/release_policy.rst:119
#: ../../docs/about/release_policy.rst:119
#: ../../docs/about/release_policy.rst:119
#: ../../docs/about/release_policy.rst:119
#: ../../docs/about/release_policy.rst:119
#: ../../docs/about/release_policy.rst:119
msgid "supported"
msgstr ""
#: ../../docs/about/release_policy.rst:96
#: ../../docs/about/release_policy.rst:89
msgid "Godot 4.0"
msgstr ""
#: ../../docs/about/release_policy.rst:89
msgid "March 2023"
msgstr ""
#: ../../docs/about/release_policy.rst:92
msgid "Godot 3.6 (`3.x`, LTS)"
msgstr ""
#: ../../docs/about/release_policy.rst:92
msgid "Q3 2023 (estimate)"
msgstr ""
#: ../../docs/about/release_policy.rst:92
msgid "|supported| *Beta.* Receives new features, usability and performance improvements, as well as bug fixes, while under development."
msgstr ""
#: ../../docs/about/release_policy.rst:95
msgid "Godot 3.5"
msgstr ""
#: ../../docs/about/release_policy.rst:96
#: ../../docs/about/release_policy.rst:95
msgid "August 2022"
msgstr ""
#: ../../docs/about/release_policy.rst:96
msgid "|supported| Receives fixes for bugs, security and platform support issues, as well as backwards-compatible usability enhancements."
msgstr ""
#: ../../docs/about/release_policy.rst:99
#: ../../docs/about/release_policy.rst:98
msgid "Godot 3.4"
msgstr ""
#: ../../docs/about/release_policy.rst:99
#: ../../docs/about/release_policy.rst:98
msgid "November 2021"
msgstr ""
#: ../../docs/about/release_policy.rst:99
msgid "|partial| Receives fixes for security and platform support issues only."
msgstr ""
#: ../../docs/about/release_policy.rst:120
#: ../../docs/about/release_policy.rst:120
#: ../../docs/about/release_policy.rst:120
msgid "partial"
msgstr ""
#: ../../docs/about/release_policy.rst:101
msgid "Godot 3.3"
msgstr ""
#: ../../docs/about/release_policy.rst:101
msgid "April 2021"
msgstr ""
#: ../../docs/about/release_policy.rst:101
msgid "|eol| No longer supported as fully superseded by the compatible 3.4 release (last update: 3.3.4)."
#: ../../docs/about/release_policy.rst:98
msgid "|eol| No longer supported, as fully superseded by the compatible 3.5 release (last update: 3.4.5)."
msgstr ""
#: ../../docs/about/release_policy.rst:121
@@ -189,9 +187,22 @@ msgstr ""
#: ../../docs/about/release_policy.rst:121
#: ../../docs/about/release_policy.rst:121
#: ../../docs/about/release_policy.rst:121
#: ../../docs/about/release_policy.rst:121
msgid "eol"
msgstr ""
#: ../../docs/about/release_policy.rst:101
msgid "Godot 3.3"
msgstr ""
#: ../../docs/about/release_policy.rst:101
msgid "April 2021"
msgstr ""
#: ../../docs/about/release_policy.rst:101
msgid "|eol| No longer supported, as fully superseded by the compatible 3.4 release (last update: 3.3.4)."
msgstr ""
#: ../../docs/about/release_policy.rst:104
msgid "Godot 3.2"
msgstr ""
@@ -273,6 +284,11 @@ msgstr ""
msgid "December 2014"
msgstr ""
#: ../../docs/about/release_policy.rst:120
#: ../../docs/about/release_policy.rst:120
msgid "partial"
msgstr ""
#: ../../docs/about/release_policy.rst:124
msgid "**Legend:** |supported| Full support |partial| Partial support |eol| No support (end of life) |unstable| Development version"
msgstr ""
@@ -281,20 +297,148 @@ msgstr ""
msgid "Pre-release Godot versions aren't intended to be used in production and are provided for testing purposes only."
msgstr ""
#: ../../docs/about/release_policy.rst:136
#: ../../docs/about/release_policy.rst:135
msgid "See :ref:`doc_upgrading_to_godot_4` for instructions on migrating a project from Godot 3.x to 4.x."
msgstr ""
#: ../../docs/about/release_policy.rst:141
msgid "Which version should I use for a new project?"
msgstr ""
#: ../../docs/about/release_policy.rst:143
msgid "We recommend using Godot 4.x for new projects, as the Godot 4.x series will be supported long after 3.x stops receiving updates in the future. One caveat is that a lot of third-party documentation hasn't been updated for Godot 4.x yet. If you have to follow a tutorial designed for Godot 3.x, we recommend keeping :ref:`doc_upgrading_to_godot_4` open in a separate tab to check which methods have been renamed (if you get a script error while trying to use a specific node or method that was renamed in Godot 4.x)."
msgstr ""
#: ../../docs/about/release_policy.rst:151
msgid "If your project requires a feature that is missing in 4.x (such as GLES2/WebGL 1.0), you should use Godot 3.x for a new project instead."
msgstr ""
#: ../../docs/about/release_policy.rst:157
msgid "Should I upgrade my project to use new engine versions?"
msgstr ""
#: ../../docs/about/release_policy.rst:161
msgid "Upgrading software while working on a project is inherently risky, so consider whether it's a good idea for your project before attempting an upgrade. Also, make backups of your project or use version control to prevent losing data in case the upgrade goes wrong."
msgstr ""
#: ../../docs/about/release_policy.rst:166
msgid "That said, we do our best to keep minor and especially patch releases compatible with existing projects."
msgstr ""
#: ../../docs/about/release_policy.rst:169
msgid "The general recommendation is to upgrade your project to follow new *patch* releases, such as upgrading from 4.0.2 to 4.0.3. This ensures you get bug fixes, security updates and platform support updates (which is especially important for mobile platforms). You also get continued support, as only the last patch release receives support on official community platforms."
msgstr ""
#: ../../docs/about/release_policy.rst:175
msgid "For *minor* releases, you should determine whether it's a good idea to upgrade on a case-by-case basis. We've made a lot of effort in making the upgrade process as seamless as possible, but some breaking changes may be present in minor releases, along with a greater risk of regressions. Some fixes included in minor releases may also change a class' expected behavior as required to fix some bugs. This is especially the case in classes marked as *experimental* in the documentation."
msgstr ""
#: ../../docs/about/release_policy.rst:183
msgid "*Major* releases bring a lot of new functionality, but they also remove previously existing functionality and may raise hardware requirements. They also require much more work to upgrade to compared to minor releases. As a result, we recommend sticking with the major release you've started your project with if you are happy with how your project currently works. For example, if your project was started with 3.5, we recommend upgrading to 3.5.2 and possibly 3.6 in the future, but not to 4.0+, unless your project really needs the new features that come with 4.0+."
msgstr ""
#: ../../docs/about/release_policy.rst:195
msgid "When is the next release out?"
msgstr ""
#: ../../docs/about/release_policy.rst:138
msgid "While Godot contributors aren't working under any deadlines, we strive to publish minor releases relatively frequently, with an average of two 3.x minor releases per year since Godot 3.3."
#: ../../docs/about/release_policy.rst:197
msgid "While Godot contributors aren't working under any deadlines, we strive to publish minor releases relatively frequently."
msgstr ""
#: ../../docs/about/release_policy.rst:142
#: ../../docs/about/release_policy.rst:200
msgid "In particular, after the very length release cycle for 4.0, we are pivoting to a faster paced development workflow, with the 4.1 release expected within late Q2 / early Q3 2023."
msgstr ""
#: ../../docs/about/release_policy.rst:204
msgid "Frequent minor releases will enable us to ship new features faster (possibly as experimental), get user feedback quickly, and iterate to improve those features and their usability. Likewise, the general user experience will be improved more steadily with a faster path to the end users."
msgstr ""
#: ../../docs/about/release_policy.rst:209
msgid "Maintenance (patch) releases are released as needed with potentially very short development cycles, to provide users of the current stable branch with the latest bug fixes for their production needs."
msgstr ""
#: ../../docs/about/release_policy.rst:146
msgid "As for the upcoming Godot 4.0, as of December 2022, we are well into the *beta* phase, and are aiming for a stable release in Q1 2023. `Follow the Godot blog <https://godotengine.org/news>`__ for the latest updates."
#: ../../docs/about/release_policy.rst:213
msgid "The 3.6 release is still planned and should be the last stable branch of Godot 3.x. It will be a Long-Term Support (LTS) release, which we plan to support for as long as users still need it (due to missing features in Godot 4.x, or having published games which they need to keep updating for platform requirements)."
msgstr ""
#: ../../docs/about/release_policy.rst:220
msgid "What are the criteria for compatibility across engine versions?"
msgstr ""
#: ../../docs/about/release_policy.rst:224
msgid "This section is intended to be used by contributors to determine which changes are safe for a given release. The list is not exhaustive; it only outlines the most common situations encountered during Godot's development."
msgstr ""
#: ../../docs/about/release_policy.rst:228
msgid "The following changes are acceptable in patch releases:"
msgstr ""
#: ../../docs/about/release_policy.rst:230
msgid "Fixing a bug in a way that has no major negative impact on most projects, such as a visual or physics bug. Godot's physics engine is not deterministic, so physics bug fixes are not considered to break compatibility. If fixing a bug has a negative impact that could impact a lot of projects, it should be made optional (e.g. using a project setting or separate method)."
msgstr ""
#: ../../docs/about/release_policy.rst:235
msgid "Adding a new optional parameter to a method."
msgstr ""
#: ../../docs/about/release_policy.rst:236
msgid "Small-scale editor usability tweaks."
msgstr ""
#: ../../docs/about/release_policy.rst:238
msgid "Note that we tend to be more conservative with the fixes we allow in each subsequent patch release. For instance, 4.0.1 may receive more impactful fixes than 4.0.4 would."
msgstr ""
#: ../../docs/about/release_policy.rst:242
msgid "The following changes are acceptable in minor releases, but not patch releases:"
msgstr ""
#: ../../docs/about/release_policy.rst:244
msgid "Significant new features."
msgstr ""
#: ../../docs/about/release_policy.rst:245
msgid "Renaming a method parameter. In C#, method parameters can be passed by name (but not in GDScript). As a result, this can break some projects that use C#."
msgstr ""
#: ../../docs/about/release_policy.rst:247
msgid "Deprecating a method, member variable, or class. This is done by adding a deprecated flag to its class reference, which will show up in the editor. When a method is marked as deprecated, it's slated to be removed in the next *major* release."
msgstr ""
#: ../../docs/about/release_policy.rst:251
msgid "Changes that affect the default project theme's visuals."
msgstr ""
#: ../../docs/about/release_policy.rst:252
msgid "Bug fixes which significantly change the behavior or the output, with the aim to meet user expectations better. In comparison, in patch releases, we may favor keeping a buggy behavior so we don't break existing projects which likely already rely on the bug or use a workaround."
msgstr ""
#: ../../docs/about/release_policy.rst:256
msgid "Performance optimizations that result in visual changes."
msgstr ""
#: ../../docs/about/release_policy.rst:258
msgid "The following changes are considered **compatibility-breaking** and can only be performed in a new major release:"
msgstr ""
#: ../../docs/about/release_policy.rst:261
msgid "Renaming or removing a method, member variable, or class."
msgstr ""
#: ../../docs/about/release_policy.rst:262
msgid "Modifying a node's inheritance tree by making it inherit from a different class."
msgstr ""
#: ../../docs/about/release_policy.rst:263
msgid "Changing the default value of a project setting value in a way that affects existing projects. To only affect new projects, the project manager should write a modified ``project.godot`` instead."
msgstr ""
#: ../../docs/about/release_policy.rst:267
msgid "Since Godot 5.0 hasn't been branched off yet, we currently discourage making compatibility-breaking changes of this kind."
msgstr ""
#: ../../docs/about/release_policy.rst:272
msgid "When modifying a method's signature in any fashion (including adding an optional parameter), a GDExtension compatibility method must be created. This ensures that existing GDExtensions continue to work across patch and minor releases, so that users don't have to recompile them. See `pull request #76446 <https://github.com/godotengine/godot/pull/76446>`_ for more information."
msgstr ""
#: ../../docs/<rst_epilog>:0

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -25,126 +25,215 @@ msgid "This page lists common issues encountered when using Godot and possible s
msgstr ""
#: ../../docs/about/troubleshooting.rst:10
msgid "See :ref:`doc_using_the_web_editor` for caveats specific to the HTML5 version of the Godot editor."
msgid "See :ref:`doc_using_the_web_editor` for caveats specific to the Web version of the Godot editor."
msgstr ""
#: ../../docs/about/troubleshooting.rst:14
msgid "Everything I do in the editor or project manager appears delayed by one frame"
msgid "The editor runs slowly and uses all my CPU and GPU resources, making my computer noisy"
msgstr ""
#: ../../docs/about/troubleshooting.rst:16
msgid "This is a `known bug <https://github.com/godotengine/godot/issues/23069>`__ on Intel graphics drivers on Windows. Updating to the latest graphics driver version *provided by Intel* should fix the issue."
msgid "This is a known issue, especially on macOS since most Macs have Retina displays. Due to Retina displays' higher pixel density, everything has to be rendered at a higher resolution. This increases the load on the GPU and decreases perceived performance."
msgstr ""
#: ../../docs/about/troubleshooting.rst:20
msgid "You should use the graphics driver provided by Intel rather than the one provided by your desktop or laptop's manufacturer because their version is often outdated."
#: ../../docs/about/troubleshooting.rst:21
msgid "There are several ways to improve performance and battery life:"
msgstr ""
#: ../../docs/about/troubleshooting.rst:25
msgid "The grid disappears and meshes turn black when I rotate the 3D camera in the editor"
#: ../../docs/about/troubleshooting.rst:23
msgid "In 3D, click the **Perspective** button in the top left corner and enable **Half Resolution**. The 3D viewport will now be rendered at half resolution, which can be up to 4 times faster."
msgstr ""
#: ../../docs/about/troubleshooting.rst:27
msgid "This is a `known bug <https://github.com/godotengine/godot/issues/30330>`__ on Intel graphics drivers on Windows."
#: ../../docs/about/troubleshooting.rst:26
msgid "Open the Editor Settings and increase the value of **Low Processor Mode Sleep (µsec)** to ``33000`` (30 FPS). This value determines the amount of *microseconds* between frames to render. Higher values will make the editor feel less reactive but will help decrease CPU and GPU usage significantly."
msgstr ""
#: ../../docs/about/troubleshooting.rst:30
msgid "The only workaround, for now, is to switch to the GLES2 renderer. You can switch the renderer in the top-right corner of the editor or the Project Settings."
msgid "If you have a node that causes the editor to redraw continuously (such as particles), hide it and show it using a script in the ``_ready()`` method. This way, it will be hidden in the editor but will still be visible in the running project."
msgstr ""
#: ../../docs/about/troubleshooting.rst:33
msgid "If you use a computer allowing you to switch your graphics card, like NVIDIA Optimus, you can use the dedicated graphics card to run Godot."
#: ../../docs/about/troubleshooting.rst:36
msgid "The editor stutters and flickers on my variable refresh rate monitor (G-Sync/FreeSync)"
msgstr ""
#: ../../docs/about/troubleshooting.rst:37
msgid "The editor or project takes a very long time to start"
#: ../../docs/about/troubleshooting.rst:38
msgid "This is a `known issue <https://github.com/godotengine/godot/issues/38219>`__. Variable refresh rate monitors need to adjust their gamma curves continuously to emit a consistent amount of light over time. This can cause flicker to appear in dark areas of the image when the refresh rate varies a lot, which occurs as the Godot editor only redraws when necessary."
msgstr ""
#: ../../docs/about/troubleshooting.rst:39
msgid "This is a `known bug <https://github.com/godotengine/godot/issues/20566>`__ on Windows when you have specific USB peripherals connected. In particular, Corsair's iCUE software seems to cause the bug. Try updating your USB peripherals' drivers to their latest version. If the bug persists, you need to disconnect the faulty peripherals before opening the editor. You can then connect the peripheral again."
#: ../../docs/about/troubleshooting.rst:44
msgid "There are several workarounds for this:"
msgstr ""
#: ../../docs/about/troubleshooting.rst:47
msgid "Editor tooltips in the Inspector and Node docks blink when they're displayed"
#: ../../docs/about/troubleshooting.rst:46
msgid "Enable **Interface > Editor > Update Continuously** in the Editor Settings. Keep in mind this will increase power usage and heat/noise emissions since the editor will now be rendering constantly, even if nothing has changed on screen. To alleviate this, you can increase **Low Processor Mode Sleep (µsec)** to ``33000`` (30 FPS) in the Editor Settings. This value determines the amount of *microseconds* between frames to render. Higher values will make the editor feel less reactive but will help decrease CPU and GPU usage significantly."
msgstr ""
#: ../../docs/about/troubleshooting.rst:49
msgid "This is a `known issue <https://github.com/godotengine/godot/issues/32990>`__ caused by the third-party Stardock Fences application on Windows. The only known workaround is to disable Stardock Fences while using Godot."
#: ../../docs/about/troubleshooting.rst:53
msgid "Alternatively, disable variable refresh rate on your monitor or in the graphics driver."
msgstr ""
#: ../../docs/about/troubleshooting.rst:54
msgid "The Godot editor appears frozen after clicking the system console"
msgid "VRR flicker can be reduced on some displays using the **VRR Control** or **Fine Tune Dark Areas** options in your monitor's OSD. These options may increase input lag or result in crushed blacks."
msgstr ""
#: ../../docs/about/troubleshooting.rst:56
msgid "When running Godot on Windows with the system console enabled, you can accidentally enable *selection mode* by clicking inside the command window. This Windows-specific behavior pauses the application to let you select text inside the system console. Godot cannot override this system-specific behavior."
#: ../../docs/about/troubleshooting.rst:57
msgid "If using an OLED display, use the **Black (OLED)** editor theme preset in the Editor Settings. This hides VRR flicker thanks to OLED's perfect black levels."
msgstr ""
#: ../../docs/about/troubleshooting.rst:61
msgid "To solve this, select the system console window and press Enter to leave selection mode."
msgid "The editor or project takes a very long time to start"
msgstr ""
#: ../../docs/about/troubleshooting.rst:65
msgid "Some text such as \"NO DC\" appears in the top-left corner of the project manager and editor window"
msgstr ""
#: ../../docs/about/troubleshooting.rst:67
msgid "This is caused by the NVIDIA graphics driver injecting an overlay to display information."
#: ../../docs/about/troubleshooting.rst:63
msgid "When using one of the Vulkan-based renderers (Forward+ or Forward Mobile), the first startup is expected to be relatively long. This is because shaders need to be compiled before they can be cached. Shaders also need to be cached again after updating Godot, after updating graphics drivers or after switching graphics cards."
msgstr ""
#: ../../docs/about/troubleshooting.rst:69
msgid "To disable this overlay on Windows, restore your graphics driver settings to the default values in the NVIDIA Control Panel."
msgstr ""
#: ../../docs/about/troubleshooting.rst:72
msgid "To disable this overlay on Linux, open ``nvidia-settings``, go to **X Screen 0 > OpenGL Settings** then uncheck **Enable Graphics API Visual Indicator**."
msgstr ""
#: ../../docs/about/troubleshooting.rst:76
msgid "The project window appears blurry, unlike the editor"
msgid "If the issue persists after the first startup, this is a `known bug <https://github.com/godotengine/godot/issues/20566>`__ on Windows when you have specific USB peripherals connected. In particular, Corsair's iCUE software seems to cause this bug. Try updating your USB peripherals' drivers to their latest version. If the bug persists, you need to disconnect the specific peripheral before opening the editor. You can then connect the peripheral again."
msgstr ""
#: ../../docs/about/troubleshooting.rst:78
msgid "Unlike the editor, the project isn't marked as DPI-aware by default. This is done to improve performance, especially on integrated graphics, where rendering 3D scenes in hiDPI is slow."
msgid "The Godot editor appears frozen after clicking the system console"
msgstr ""
#: ../../docs/about/troubleshooting.rst:82
msgid "To resolve this, open **Project > Project Settings** and enable **Display > Window > Dpi > Allow Hidpi**. On top of that, make sure your project is configured to support :ref:`multiple resolutions <doc_multiple_resolutions>`."
#: ../../docs/about/troubleshooting.rst:80
msgid "When running Godot on Windows with the system console enabled, you can accidentally enable *selection mode* by clicking inside the command window. This Windows-specific behavior pauses the application to let you select text inside the system console. Godot cannot override this system-specific behavior."
msgstr ""
#: ../../docs/about/troubleshooting.rst:87
msgid "The project window doesn't appear centered when I run the project"
#: ../../docs/about/troubleshooting.rst:85
msgid "To solve this, select the system console window and press Enter to leave selection mode."
msgstr ""
#: ../../docs/about/troubleshooting.rst:89
msgid "This is a `known bug <https://github.com/godotengine/godot/issues/13017>`__. To resolve this, open **Project > Project Settings** and enable **Display > Window > Dpi > Allow Hidpi**. On top of that, make sure your project is configured to support :ref:`multiple resolutions <doc_multiple_resolutions>`."
msgid "The Godot editor's macOS dock icon gets duplicated every time it is manually moved"
msgstr ""
#: ../../docs/about/troubleshooting.rst:91
msgid "If you open the Godot editor and manually change the position of the dock icon, then restart the editor, you will get a duplicate dock icon all the way to the right of the dock."
msgstr ""
#: ../../docs/about/troubleshooting.rst:95
msgid "The editor/project freezes or displays glitched visuals after resuming the PC from suspend"
msgid "This is due to a design limitation of the macOS dock. The only known way to resolve this would be to merge the project manager and editor into a single process, which means the project manager would no longer spawn a separate process when starting the editor. While using a single process instance would bring several benefits, it isn't planned to be done in the near future due to the complexity of the task."
msgstr ""
#: ../../docs/about/troubleshooting.rst:97
msgid "This is a known issue on Linux with NVIDIA graphics when using the proprietary driver. There is no definitive fix yet, as suspend on Linux + NVIDIA is often buggy when OpenGL is involved."
msgstr ""
#: ../../docs/about/troubleshooting.rst:101
msgid "The NVIDIA driver offers an *experimental* `option to preserve video memory after suspend <https://wiki.archlinux.org/title/NVIDIA/Tips_and_tricks#Preserve_video_memory_after_suspend>`__ which may resolve this issue. This option has been reported to work better with more recent NVIDIA driver versions."
#: ../../docs/about/troubleshooting.rst:102
msgid "To avoid this issue, keep the Godot editor's dock icon at its default location as created by macOS."
msgstr ""
#: ../../docs/about/troubleshooting.rst:106
msgid "Some text such as \"NO DC\" appears in the top-left corner of the Project Manager and editor window"
msgstr ""
#: ../../docs/about/troubleshooting.rst:108
msgid "This is caused by the NVIDIA graphics driver injecting an overlay to display information."
msgstr ""
#: ../../docs/about/troubleshooting.rst:110
msgid "To disable this overlay on Windows, restore your graphics driver settings to the default values in the NVIDIA Control Panel."
msgstr ""
#: ../../docs/about/troubleshooting.rst:113
msgid "To disable this overlay on Linux, open ``nvidia-settings``, go to **X Screen 0 > OpenGL Settings** then uncheck **Enable Graphics API Visual Indicator**."
msgstr ""
#: ../../docs/about/troubleshooting.rst:117
msgid "The editor or project appears overly sharp or blurry"
msgstr ""
#: ../../docs/about/troubleshooting.rst:123
#: ../../docs/about/troubleshooting.rst:123
msgid "Correct appearance (left), oversharpened appearance due to graphics driver sharpening (right)"
msgstr ""
#: ../../docs/about/troubleshooting.rst:125
msgid "If the editor or project appears overly sharp, this is likely due to image sharpening being forced on all Vulkan or OpenGL applications by your graphics driver. You can disable this behavior in the graphics driver's control panel:"
msgstr ""
#: ../../docs/about/troubleshooting.rst:129
msgid "**NVIDIA (Windows):** Open the start menu and choose **NVIDIA Control Panel**. Open the **Manage 3D settings** tab on the left. In the list in the middle, scroll to **Image Sharpening** and set it to **Sharpening Off**."
msgstr ""
#: ../../docs/about/troubleshooting.rst:132
msgid "**AMD (Windows):** Open the start menu and choose **AMD Software**. Click the settings \"cog\" icon in the top-right corner. Go to the **Graphics** tab then disable **Radeon Image Sharpening**."
msgstr ""
#: ../../docs/about/troubleshooting.rst:136
msgid "If the editor or project appears overly blurry, this is likely due to :abbr:`FXAA (Fast Approximate AntiAliasing)` being forced on all Vulkan or OpenGL applications by your graphics driver."
msgstr ""
#: ../../docs/about/troubleshooting.rst:140
msgid "**NVIDIA (Windows):** Open the start menu and choose **NVIDIA Control Panel**. Open the **Manage 3D settings** tab on the left. In the list in the middle, scroll to **Fast Approximate Antialiasing** and set it to **Application Controlled**."
msgstr ""
#: ../../docs/about/troubleshooting.rst:144
msgid "**NVIDIA (Linux):** Open the applications menu and choose **NVIDIA X Server Settings**. Select to **Antialiasing Settings** on the left, then uncheck **Enable FXAA**."
msgstr ""
#: ../../docs/about/troubleshooting.rst:147
msgid "**AMD (Windows):** Open the start menu and choose **AMD Software**. Click the settings \"cog\" icon in the top-right corner. Go to the **Graphics** tab, scroll to the bottom and click **Advanced** to unfold its settings. Disable **Morphological Anti-Aliasing**."
msgstr ""
#: ../../docs/about/troubleshooting.rst:152
msgid "Third-party vendor-independent utilities such as vkBasalt may also force sharpening or FXAA on all Vulkan applications. You may want to check their configuration as well."
msgstr ""
#: ../../docs/about/troubleshooting.rst:156
msgid "After changing options in the graphics driver or third-party utilities, restart Godot to make the changes effective."
msgstr ""
#: ../../docs/about/troubleshooting.rst:159
msgid "If you still wish to force sharpening or FXAA on other applications, it's recommended to do so on a per-application basis using the application profiles system provided by graphics drivers' control panels."
msgstr ""
#: ../../docs/about/troubleshooting.rst:164
msgid "The editor or project appears to have washed out colors"
msgstr ""
#: ../../docs/about/troubleshooting.rst:166
msgid "On Windows, this is usually caused by incorrect OS or monitor settings, as Godot currently does not support :abbr:`HDR (High Dynamic Range)` *output* (even though it may internally render in HDR)."
msgstr ""
#: ../../docs/about/troubleshooting.rst:170
msgid "As `most displays are not designed to display SDR content in HDR mode <https://tftcentral.co.uk/articles/heres-why-you-should-only-enable-hdr-mode-on-your-pc-when-you-are-viewing-hdr-content>`__, it is recommended to disable HDR in the Windows settings when not running applications that use HDR output. On Windows 11, this can be done by pressing :kbd:`Windows + Alt + B` (this shortcut is part of the Xbox Game Bar app). To toggle HDR automatically based on applications currently running, you can use `AutoActions <https://github.com/Codectory/AutoActions>`__."
msgstr ""
#: ../../docs/about/troubleshooting.rst:177
msgid "If you insist on leaving HDR enabled, it is possible to somewhat improve the result by ensuring the display is configured to use :abbr:`HGIG (HDR Gaming Interest Group)` tonemapping (as opposed to :abbr:`DTM (Dynamic Tone Mapping)`), then `using the Windows HDR calibration app <https://support.microsoft.com/en-us/windows/calibrate-your-hdr-display-using-the-windows-hdr-calibration-app-f30f4809-3369-43e4-9b02-9eabebd23f19>`__. It is also strongly recommended to use Windows 11 instead of Windows 10 when using HDR. The end result will still likely be inferior to disabling HDR on the display, though."
msgstr ""
#: ../../docs/about/troubleshooting.rst:184
msgid "Support for HDR *output* is planned in a future release."
msgstr ""
#: ../../docs/about/troubleshooting.rst:187
msgid "The editor/project freezes or displays glitched visuals after resuming the PC from suspend"
msgstr ""
#: ../../docs/about/troubleshooting.rst:189
msgid "This is a known issue on Linux with NVIDIA graphics when using the proprietary driver. There is no definitive fix yet, as suspend on Linux + NVIDIA is often buggy when OpenGL or Vulkan is involved. The Compatibility rendering method (which uses OpenGL) is generally less prone to suspend-related issues compared to the Forward+ and Forward Mobile rendering methods (which use Vulkan)."
msgstr ""
#: ../../docs/about/troubleshooting.rst:195
msgid "The NVIDIA driver offers an *experimental* `option to preserve video memory after suspend <https://wiki.archlinux.org/title/NVIDIA/Tips_and_tricks#Preserve_video_memory_after_suspend>`__ which may resolve this issue. This option has been reported to work better with more recent NVIDIA driver versions."
msgstr ""
#: ../../docs/about/troubleshooting.rst:200
msgid "To avoid losing work, save scenes in the editor before putting the PC to sleep."
msgstr ""
#: ../../docs/about/troubleshooting.rst:109
#: ../../docs/about/troubleshooting.rst:203
msgid "The project works when run from the editor, but fails to load some files when running from an exported copy"
msgstr ""
#: ../../docs/about/troubleshooting.rst:111
#: ../../docs/about/troubleshooting.rst:205
msgid "This is usually caused by forgetting to specify a filter for non-resource files in the Export dialog. By default, Godot will only include actual *resources* into the PCK file. Some files commonly used, such as JSON files, are not considered resources. For example, if you load ``test.json`` in the exported project, you need to specify ``*.json`` in the non-resource export filter. See :ref:`doc_exporting_projects_export_mode` for more information."
msgstr ""
#: ../../docs/about/troubleshooting.rst:118
#: ../../docs/about/troubleshooting.rst:212
msgid "Also, note that files and folders whose names begin with a period will never be included in the exported project. This is done to prevent version control folders like ``.git`` from being included in the exported PCK file."
msgstr ""
#: ../../docs/about/troubleshooting.rst:216
msgid "On Windows, this can also be due to :ref:`case sensitivity <doc_project_organization_case_sensitivity>` issues. If you reference a resource in your script with a different case than on the filesystem, loading will fail once you export the project. This is because the virtual PCK filesystem is case-sensitive, while Windows's filesystem is case-insensitive by default."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -81,191 +81,195 @@ msgid "These things are not required for your asset to be approved, but if you f
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:62
msgid "When creating non-project assets, it is common practice to place your files inside of an **addons/asset_name/** folder. Do this to avoid having your files clash with other assets, or with the files of users installing your asset. This folder will **not** be automatically generated when a user installs your asset."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:67
msgid "Fix or suppress all script **warnings**. The warning system is there to help identify issues with your code, but people using your asset don't need to see them."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:66
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:71
msgid "Make your code conform to the official **style guides**. Having a consistent style helps other people read your code, and it also helps if other people wish to contribute to your asset. See: the :ref:`doc_gdscript_styleguide` or the :ref:`doc_c_sharp_styleguide`."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:71
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:76
msgid "If you have screenshots in your repo, place them in their own subfolder and add an empty **.gdignore** file in the same folder (note: **gd**, not **git**). This prevents Godot from importing your screenshots. On Windows, open a command prompt in the project folder and run ``type nul > .gdignore`` to create a file whose name starts with a period."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:77
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:82
msgid "If your asset is a library for working with other files, consider including **example files** in the asset."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:80
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:85
msgid "Consider adding a **.gitattributes** file to your repo. This file allows giving extra instructions to Git, such as specifying line endings and listing files not required for your asset to function with the ``export-ignore`` directive. This directive removes such files from the resulting ZIP file, preventing them from being downloaded by the asset library users. These are common examples of **.gitattributes**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:89
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:94
msgid "Projects / Templates"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:96
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:101
msgid "Addons / Asset Packs"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:108
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:113
msgid "If you are submitting a plugin, add a **copy** of your license and readme to the plugin folder itself. This is the folder that users are guaranteed to keep with their project, so a copy ensures they always have those files handy (and helps them fulfill your licensing terms)."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:113
msgid "The **icon** should be a square, its aspect ratio should be 1:1. It should also ideally have a minimum resolution of 64x64 pixels."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:116
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:118
msgid "While the asset library allows more than just GitHub, consider hosting your asset's source code on **GitHub**. Other services may not work reliably, and a lack of familiarity can be a barrier to contributors."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:121
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:123
msgid "Submitting"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:123
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:125
msgid "Once you are logged in, you will be able to head over to the \"Submit Assets\" page of the AssetLib, which will look like this:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:126
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:128
msgid "|image0|"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:214
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:214
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:220
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:220
msgid "image0"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:128
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:130
msgid "While it may look like a lot (and there is more as you scroll down), each field is described in terms of what you should put in. We will nonetheless go over what is required in the submission form here as well."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:133
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:135
msgid "**Asset Name**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:133
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:135
msgid "The name of your asset. Should be a unique, descriptive title of what your asset is."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:139
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:141
msgid "**Category**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:136
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:138
msgid "The category that your asset belongs to, and will be shown in search results. The category is split into **Addons** and **Projects**. In-editor, assets of the Project type (Templates, Demos, Projects) only show up when viewing the AssetLib from the Project Manager, while assets of the Addon type will only be visible from inside a project."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:145
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:147
msgid "**Godot version**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:142
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:144
msgid "The version of the engine that the asset works with. Currently, it's not possible to have a single asset entry contain downloads for multiple engine versions, so you may need to re-submit the asset multiple times, with an entry for each Godot version it supports. This is particularly important when dealing with major versions of the engine, such as Godot 2.x and Godot 3.x."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:152
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:154
msgid "**Version**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:148
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:150
msgid "The version number of the asset. While you are free to choose and use any versioning scheme that you like, you may want to look into something such as `SemVer <https://semver.org>`_ if you want your asset's versioning scheme to be clear and consistent. Note that there is also an internal version number, incremented every time the asset download URL is changed or updated."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:157
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:159
msgid "**Repository host**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:155
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:157
msgid "Assets uploaded to the AssetLib are not hosted on it directly. Instead, they point to repositories hosted on third-party Git providers, such as GitHub, GitLab or Bitbucket. This is where you choose which provider your asset uses, so the site can compute the final download link."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:160
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:162
msgid "**Repository URL**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:160
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:162
msgid "The URL to your asset's files/webpage. This will vary based on your choice of provider, but it should look similar to `https://github.com/<user>/<project>`."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:165
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:167
msgid "**Issues URL**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:163
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:165
msgid "The URL to your asset's issue tracker. Again, this will differ from repository host to repository host, but will likely look similar to `https://github.com/<user>/<project>/issues`. You may leave this field empty if you use your provider's issue tracker, and it's part of the same repository."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:169
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:171
msgid "**Download Commit**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:168
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:170
msgid "The commit of the asset. For example, `b1d3172f89b86e52465a74f63a74ac84c491d3e1`. The site computes the actual download URL from this."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:173
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:179
msgid "**Icon URL**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:172
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:174
msgid "The URL to your asset's icon (which will be used as a thumbnail in the AssetLib search results and on the asset's page). Should be an image in either the PNG or JPG format."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:178
msgid "**License**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:176
msgid "The license under which you are distributing the asset. The list includes a variety of free and open-source software licenses, such as GPL (v2 and v3), MIT, BSD and Boost Software License. You can visit `OpenSource.org <https://opensource.org>`_ for a detailed description of each of the listed licenses."
msgid "The **icon** must be square (1:1 aspect ratio). It should have a minimum resolution of 128×128 pixels."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:184
msgid "**Description**:"
msgid "**License**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:181
msgid "Finally, you can use the Description field for a textual overview of your asset, its features and behavior, a changelog, et cetera. In the future, formatting with Markdown will be supported, but currently, your only option is plain text."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:186
msgid "You may also include up to three video and/or image previews, which will be shown at the bottom of the asset page. Use the \"Enable\" checkbox on each of the preview submission boxes to enable them."
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:182
msgid "The license under which you are distributing the asset. The list includes a variety of free and open source software licenses, such as GPL (v2 and v3), MIT, BSD and Boost Software License. You can visit `OpenSource.org <https://opensource.org>`_ for a detailed description of each of the listed licenses."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:190
msgid "**Type**:"
msgid "**Description**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:191
msgid "Either an image, or a video."
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:187
msgid "Finally, you can use the Description field for a textual overview of your asset, its features and behavior, a changelog, et cetera. In the future, formatting with Markdown will be supported, but currently, your only option is plain text."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:192
msgid "**Image/YouTube URL**:"
msgid "You may also include up to three video and/or image previews, which will be shown at the bottom of the asset page. Use the \"Enable\" checkbox on each of the preview submission boxes to enable them."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:193
msgid "Either a link to the image, or to a video, hosted on YouTube."
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:196
msgid "**Type**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:197
msgid "**Thumbnail URL**:"
msgid "Either an image, or a video."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:195
msgid "A URL to an image that will be used as a thumbnail for the preview. This option will be removed eventually, and thumbnails will be automatically computed instead."
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:198
msgid "**Image/YouTube URL**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:199
msgid "Either a link to the image, or to a video, hosted on YouTube."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:203
msgid "**Thumbnail URL**:"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:201
msgid "A URL to an image that will be used as a thumbnail for the preview. This option will be removed eventually, and thumbnails will be automatically computed instead."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:205
msgid "Once you are done, press \"Submit\". Your asset will be entered into the review queue. You can check all assets currently pending a review `here <https://godotengine.org/asset-library/asset/edit?&asset=-1>`_ . The approval process is manual and may take up to a few days for your asset to be accepted (or rejected), so please be patient!"
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:206
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:212
msgid "You may have some luck accelerating the approval process by messaging the moderators and AssetLib reviewers on the `Godot Contributors Chat <https://chat.godotengine.org/>`_, or the official Discord server."
msgstr ""
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:210
#: ../../docs/community/asset_library/submitting_to_assetlib.rst:216
msgid "You will be informed when your asset is reviewed. If it was rejected, you will be told why that may have been, and you will be able to submit it again with the appropriate changes."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -224,11 +224,11 @@ msgid "In the editor"
msgstr ""
#: ../../docs/community/asset_library/using_assetlib.rst:111
msgid "The editor will display different categories of assets depending on whether you're browsing the project manager's **Templates** tab or the editor's **AssetLib** tab."
msgid "The editor will display different categories of assets depending on whether you're browsing the Project Manager's **Asset Library Projects** tab or the editor's **AssetLib** tab."
msgstr ""
#: ../../docs/community/asset_library/using_assetlib.rst:115
msgid "The project manager's **Templates** tab will only display assets that are standalone projects by themselves. This is denoted on the asset library with the *Templates*, *Demos* and *Projects* categories."
msgid "The Project Manager's **Asset Library Projects** tab will only display assets that are standalone projects by themselves. This is denoted on the asset library with the *Templates*, *Demos* and *Projects* categories."
msgstr ""
#: ../../docs/community/asset_library/using_assetlib.rst:119

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -29,7 +29,7 @@ msgid "On the surface, the Asset Library might look and function similar to asse
msgstr ""
#: ../../docs/community/asset_library/what_is_assetlib.rst:17
msgid "The Asset Library is different - all assets are distributed free of charge, and under a host of open-source licenses (such as the MIT license, the GPL, and the Boost Software License). This makes the AssetLib more similar to the software repositories of a Linux distribution."
msgid "The Asset Library is different - all assets are distributed free of charge, and under a host of open source licenses (such as the MIT license, the GPL, and the Boost Software License). This makes the AssetLib more similar to the software repositories of a Linux distribution."
msgstr ""
#: ../../docs/community/asset_library/what_is_assetlib.rst:21
@@ -49,7 +49,7 @@ msgid "Be aware that there are, broadly, two different types of assets you can p
msgstr ""
#: ../../docs/community/asset_library/what_is_assetlib.rst:33
msgid "Assets labeled as \"Templates\", \"Projects\", or \"Demos\" appear under the \"Templates\" tab in the Godot project manager. These assets are standalone Godot projects that can run by themselves."
msgid "Assets labeled as \"Templates\", \"Projects\", or \"Demos\" appear under the \"Asset Library Projects\" tab in the Godot Project Manager. These assets are standalone Godot projects that can run by themselves."
msgstr ""
#: ../../docs/community/asset_library/what_is_assetlib.rst:37

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@@ -1,249 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:4
msgid "Best practices for engine contributors"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:7
msgid "Introduction"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:9
msgid "Godot has a large amount of users who have the ability to contribute, given the project itself is aimed mainly at users with the ability to do programming. Despite this, not all of them have the same level of experience working in large projects or in software engineering, which can lead to common misunderstandings and bad practices during the process of contributing code to the project."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:16
msgid "Language"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:18
msgid "The scope of this document is to be a list of best practices for contributors to follow, as well as to create a language they can use to refer to common situations that arise in the process of submitting their contributions."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:22
msgid "While some may find it useful to extend this to general software development, our intention is to just restrict to situations that are most common in our project."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:26
msgid "Contributions are most of the time categorized as bug fixes, enhancements or new features. To abstract this idea, we will call them *Solutions*, because they always seek to solve something that can be described as a *Problem*."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:31
msgid "Best Practices"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:34
msgid "#1: The problem always comes first"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:36
msgid "Many contributors are extremely creative and just enjoy the process of designing abstract data structures, creating nice user interfaces, or simply love programming. Whatever the case may be, they come up with cool ideas, which may or may not be solving any real problems."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:43
msgid "These are usually called *Solutions in search of a problem*. In an ideal world, they would not be harmful but, in reality, code takes time to write, takes space as source and binary and requires maintenance once it exists. Avoiding the addition of anything unnecessary is always considered a good practice in software development."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:50
msgid "#2: To solve the problem, it has to exist in the first place"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:52
msgid "This is a variation of the previous practice. Adding anything unnecessary is not a good idea, but what constitutes what is necessary and what isn't?"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:57
msgid "The answer to this question is that the problem needs to *exist* before it can be actually solved. It must not be speculation or a belief. The user must be using the software as intended to create something they *need*. In this process, the user may stumble into a problem that requires a solution to proceed, or in order to achieve greater productivity. In this case, *a solution is needed*."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:63
msgid "Believing that problems may arise in the future and that the software needs to be ready to solve them by the time they appear is called *\"Future proofing\"* and its characterized by lines of thought such as:"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:67
msgid "I think it would be useful for users to..."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:68
msgid "I think users will eventually need to..."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:70
msgid "This is generally considered a bad habit because trying to solve problems that *don't actually exist* in the present will often lead to code that will be written but never used, or that is considerably more complex to use and maintain than it needs to be."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:76
msgid "#3: The problem has to be complex or frequent"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:78
msgid "Software is designed to solve problems, but we can't expect it to solve *every problem that exists under the sun*. As a game engine, Godot will solve problems for you, so it helps you to make games better and faster, but it won't make the *entire game* for you. A line must be drawn somewhere."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:85
msgid "Whether a problem is worth solving is determined by the difficulty the user has to work around it. This difficulty can be expressed as:"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:88
msgid "The complexity of the problem"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:89
msgid "The frequency the problem"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:91
msgid "If the problem is *too complex* for most users to solve, the software must offer a ready-made solution for it. Likewise, if the problem is easy for the user to work around, offering such a solution is unnecessary and it's up to the user to do it."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:96
msgid "The exception, however, is when the user stumbles into this problem *frequently enough* that having to do the simple solution every time becomes an annoyance. In this case, the software must offer a solution to simplify this use case."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:100
msgid "In our experience, in most cases it's usually obvious to tell when a problem is complex or frequent, but cases may arise where drawing this line is difficult. This is why discussing with other developers (next point) is always advised."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:105
msgid "#4: The solution must be discussed with others"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:107
msgid "It is often the case that when users stumble upon problems, they are only immersed in their project, so they will naturally try to solve the problem from their perspective, thinking only about their use case."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:111
msgid "Because of this, user proposed solutions don't always contemplate other use cases that developers are often aware of, so they are often biased towards their own requirements."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:117
msgid "For developers, the perspective is different. They may find the user's problem too unique to justify a solution (instead of a user workaround), or maybe they will suggest a partial (usually simpler or lower level) solution that applies to a wider range of known problems, and leave the rest of the solution up to the user."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:123
msgid "In any case, before attempting a contribution, it is important to discuss the actual problems with the other developers or contributors, so a better agreement on implementation can be reached."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:127
msgid "The only exception, in this case, is when an area of code has a clear owner (agreed by the other contributors), who talks to users directly and has the most knowledge to implement a solution directly."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:131
msgid "Also, Godot's philosophy is to favor ease of use and maintenance over absolute performance. Performance optimizations will be considered, but they may not be accepted if they make something too difficult to use or if they add too much complexity to the codebase."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:137
msgid "#5: To each problem, its own solution"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:139
msgid "For programmers, it is always a most enjoyable challenge to find the most optimal solutions to problems. Things, however, may go overboard sometimes and programmers will try to come up with solutions that solve as many problems as possible."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:144
msgid "The situation will often take a turn for the worse when, in order to make this solution appear even more fantastic and flexible, the pure speculation-based problems (as described in #2) also make their appearance on stage."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:150
msgid "The main problem is that, in reality, it rarely works this way. Most of the time, writing an individual solution to each problem results in code that is simpler and more maintainable."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:154
msgid "Additionally, solutions that target individual problems are better for the users, as they find something that does exactly what they need, without having to learn and remember a more complex system they will only need for simple tasks."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:159
msgid "Big and flexible solutions also have an additional drawback which is that, over time, they are rarely flexible enough for all users, who keep requesting more functions added (and making the API and codebase more and more complex)."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:164
msgid "#6: Cater to common use cases, leave the door open for the rare ones"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:166
msgid "This is a continuation of the previous point, which further explains why this way of thinking and designing software is preferred."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:169
msgid "As mentioned before (in point #2), it is very difficult for us (as human beings who design software) to actually understand all future user needs. Trying to write very flexible structures that cater to many use cases at once is often a mistake."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:174
msgid "We may come up with something we believe is brilliant, but when it's actually used, we will find that users will never even use half of it, or that they will require features that don't quite accommodate our original design, forcing us to either throw it away or make it even more complex."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:179
msgid "The question is then, how to design software that gives users what *we know they need*, but that is flexible enough to allow them to do *what we don't know they might need* in the future?"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:185
msgid "The answer to this question is that, to ensure users still can do what they want to do, we need to give them access to a *low level API* that they can use to achieve what they want, even if it's more work for them because it means reimplementing some logic that already exists."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:190
msgid "In real-life scenarios, these use cases will be at most rare and uncommon anyway, so it makes sense a custom solution needs to be written. This is why it's important to still provide users the basic building blocks to do it."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:195
msgid "#7: Prefer local solutions"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:197
msgid "When looking for a solution to a problem, be it implementing a new feature or fixing a bug, sometimes the easiest path is to add data or a new function in the core layers of code."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:201
msgid "The main problem here is, adding something to the core layers that will only be used from a single location far away will not only make the code more difficult to follow (split in two), but also make the core API larger, more complex, more difficult to understand in general."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:206
msgid "This is bad, because readability and cleanness of core APIs is always of extreme importance given how much code relies on it, and because it's key for new contributors as a starting point to learning the codebase."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:214
msgid "The common reasoning for wanting to do this is that it's usually less code to simply add a hack in the core layers."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:217
msgid "Despite this, this practice is not advised. Generally, the code for a solution should be closer to where the problem originates, even if it involves more code, duplicated, more complex or is less efficient. More creativity might be needed, but this path is always the advised one."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:223
msgid "#8: Don't use complex canned solutions for simple problems"
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:225
msgid "Not every problem has a simple solution and, many times, the right choice is to use a third party library to solve the problem."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:228
msgid "As Godot requires to be shipped in a large amount of platforms, we can't link libraries dynamically. Instead, we bundle them in our source tree."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:233
msgid "As a result, we are very picky with what goes in, and we tend to prefer smaller libraries (in fact, single header ones are our favorite). Only in cases where there is no other choice we end up bundling something larger."
msgstr ""
#: ../../docs/community/contributing/best_practices_for_engine_contributors.rst:237
msgid "Also, libraries must use a permissive enough license to be included into Godot. Some examples of acceptable licenses are Apache 2.0, BSD, MIT, ISC, and MPL 2.0. In particular, we cannot accept libraries licensed under the GPL or LGPL since these licenses effectively disallow static linking in proprietary software (which Godot is distributed as in most exported projects). This requirement also applies to the editor, since we may want to run it on iOS in the long term. Since iOS doesn't support dynamic linking, static linking the only option on that platform."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,105 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/building_the_manual.rst:4
msgid "Building the manual with Sphinx"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:6
msgid "This page explains how to build a local copy of the Godot manual using the Sphinx docs engine. This allows you to have local HTML files and build the documentation as a PDF, EPUB, or LaTeX file, for example."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:10
msgid "To get started, you need to:"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:12
msgid "Clone the `godot-docs repository <https://github.com/godotengine/godot-docs/>`__."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:13
msgid "Install `Sphinx <https://www.sphinx-doc.org/>`__"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:14
msgid "To build the docs as HTML files, install the `readthedocs.org theme <https://github.com/snide/sphinx_rtd_theme>`__."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:16
msgid "Install the Sphinx extensions defined in the `godot-docs repository <https://github.com/godotengine/godot-docs/>`__ ``requirements.txt`` file."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:19
msgid "We recommend using `pip <https://pip.pypa.io>`__, Pythons package manager to install all these tools. It comes pre-installed with `Python <https://www.python.org/>`__. Ensure that you install and use Python 3. Here are the commands to clone the repository and then install all requirements."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:24
msgid "You may need to write ``python3 -m pip`` (Unix) or ``py -m pip`` (Windows) instead of ``pip3``. If both approaches fail, `check that you have pip3 installed <https://pip.pypa.io/en/stable/installation/>`__."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:33
msgid "With the programs installed, you can build the HTML documentation from the root folder of this repository with the following command:"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:44
msgid "If you run into errors, you may try the following command:"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:50
msgid "Building the documentation requires at least 8 GB of RAM to run without disk swapping, which slows it down. If you have at least 16 GB of RAM, you can speed up compilation by running:"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:62
msgid "The compilation will take some time as the ``classes/`` folder contains hundreds of files."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:65
msgid "You can then browse the documentation by opening ``_build/html/index.html`` in your web browser."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:68
msgid "In case you of a ``MemoryError`` or ``EOFError``, you can remove the ``classes/`` folder and run ``make`` again. This will drop the class references from the final HTML documentation but will keep the rest intact."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:72
msgid "If you delete the ``classes/`` folder, do not use ``git add .`` when working on a pull request or the whole ``classes/`` folder will be removed when you commit. See `#3157 <https://github.com/godotengine/godot-docs/issues/3157>`__ for more detail."
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:78
msgid "Alternatively, you can build the documentation by running the sphinx-build program manually:"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:85
msgid "You can also specify a list of files to build, which can greatly speed up compilation:"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:92
msgid "Building with Sphinx and virtualenv"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:94
msgid "If you want your Sphinx installation scoped to the project, you can install sphinx-build using virtualenv. To do so, run this command from this repository's root folder:"
msgstr ""
#: ../../docs/community/contributing/building_the_manual.rst:104
msgid "Then, run ``make html`` as shown above."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,384 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:4
msgid "Class reference writing guidelines"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:6
msgid "This page explains how to write the class reference. You will learn where to write new descriptions for the classes, methods, and properties for Godot's built-in node types."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:12
msgid "To learn to submit your changes to the Godot project using the Git version control system, see :ref:`doc_updating_the_class_reference`."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:15
msgid "The reference for each class is contained in an XML file like the one below:"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:65
msgid "It starts with brief and long descriptions. In the generated docs, the brief description is always at the top of the page, while the long description lies below the list of methods, variables, and constants. You can find methods, member variables, constants, and signals in separate XML nodes."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:70
msgid "For each, you want to learn how they work in Godot's source code. Then, fill their documentation by completing or improving the text in these tags:"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:73
msgid "`<brief_description>`"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:74
msgid "`<description>`"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:75
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:80
msgid "`<constant>`"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:76
msgid "`<method>` (in its `<description>` tag; return types and arguments don't take separate documentation strings)"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:78
msgid "`<member>`"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:79
msgid "`<signal>` (in its `<description>` tag; arguments don't take separate documentation strings)"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:82
msgid "Write in a clear and simple language. Always follow the :ref:`writing guidelines <doc_docs_writing_guidelines>` to keep your descriptions short and easy to read. **Do not leave empty lines** in the descriptions: each line in the XML file will result in a new paragraph, even if it is empty."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:90
msgid "How to edit class XML"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:92
msgid "Edit the file for your chosen class in ``doc/classes/`` to update the class reference. The folder contains an XML file for each class. The XML lists the constants and methods you will find in the class reference. Godot generates and updates the XML automatically."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:97
msgid "For some modules in the engine's source code, you'll find the XML files in the ``modules/<module_name>/doc_classes/`` directory instead."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:100
msgid "Edit it using your favorite text editor. If you use a code editor, make sure that it doesn't change the indent style: you should use tabs for the XML and four spaces inside BBCode-style blocks. More on that below."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:104
msgid "To check that the modifications you've made are correct in the generated documentation, navigate to the ``doc/`` folder and run the command ``make rst``. This will convert the XML files to the online documentation's format and output errors if anything's wrong."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:109
msgid "Alternatively, you can build Godot and open the modified page in the built-in code reference. To learn how to compile the engine, read the :ref:`compilation guide <toc-devel-compiling>`."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:113
msgid "We recommend using a code editor that supports XML files like Vim, Atom, Visual Studio Code, Notepad++, or another to comfortably edit the file. You can also use their search feature to find classes and properties quickly."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:120
msgid "Improve formatting with BBCode style tags"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:122
msgid "Godot's class reference supports BBCode-like tags. They add nice formatting to the text. Here's the list of available tags:"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:126
msgid "Tag"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:126
msgid "Effect"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:126
msgid "Usage"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:126
msgid "Result"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:128
msgid "[Class]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:128
msgid "Link a class"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:128
msgid "Move the [Sprite]."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:128
msgid "Move the :ref:`class_Sprite`."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:130
msgid "[method methodname]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:130
msgid "Link to a method in this class"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:130
msgid "Call [method hide]."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:130
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:132
msgid "Call :ref:`hide <class_Spatial_method_hide>`."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:132
msgid "[method Class.methodname]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:132
msgid "Link to another class's method"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:132
msgid "Call [method Spatial.hide]."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:134
msgid "[member membername]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:134
msgid "Link to a member in this class"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:134
msgid "Get [member scale]."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:134
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:136
msgid "Get :ref:`scale <class_Node2D_property_scale>`."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:136
msgid "[member Class.membername]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:136
msgid "Link to another class's member"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:136
msgid "Get [member Node2D.scale]."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:138
msgid "[signal signalname]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:138
msgid "Link to a signal in this class"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:138
msgid "Emit [signal renamed]."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:138
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:140
msgid "Emit :ref:`renamed <class_Node_signal_renamed>`."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:140
msgid "[signal Class.signalname]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:140
msgid "Link to another class's signal"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:140
msgid "Emit [signal Node.renamed]."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:142
msgid "[b] [/b]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:142
msgid "Bold"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:142
msgid "Some [b]bold[/b] text."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:142
msgid "Some **bold** text."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:144
msgid "[i] [/i]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:144
msgid "Italic"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:144
msgid "Some [i]italic[/i] text."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:144
msgid "Some *italic* text."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:146
msgid "[code] [/code]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:146
msgid "Monospace"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:146
msgid "Some [code]monospace[/code] text."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:146
msgid "Some ``monospace`` text."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:148
msgid "[kbd] [/kbd]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:148
msgid "Keyboard/mouse shortcut"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:148
msgid "Some [kbd]Ctrl + C[/kbd] key."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:148
msgid "Some :kbd:`Ctrl + C` key."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:150
msgid "[codeblock] [/codeblock]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:150
msgid "Multiline preformatted block"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:150
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:150
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:152
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:152
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:154
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:154
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:156
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:156
msgid "*See below.*"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:152
msgid "[codeblocks] [/codeblocks]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:152
msgid "[codeblock] for multiple languages"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:154
msgid "[gdscript] [/gdscript]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:154
msgid "GDScript codeblock tab in codeblocks"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:156
msgid "[csharp] [/csharp]"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:156
msgid "C# codeblock tab in codeblocks"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:159
msgid "Use ``[codeblock]`` for pre-formatted code blocks. Inside ``[codeblock]``, always use **four spaces** for indentation. The parser will delete tabs. For example:"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:171
msgid "Will display as:"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:179
msgid "If you need to have different code version in GDScript and C#, use ``[codeblocks]`` instead. If you use ``[codeblocks]``, you also need to have at least one of the language-specific tags, ``[gdscript]`` and ``[csharp]``."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:183
msgid "Always write GDScript code examples first! You can use this `experimental code translation tool <https://github.com/HaSa1002/codetranslator>`_ to speed up your workflow."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:204
msgid "The above will display as:"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:221
msgid "To denote important information, add a paragraph starting with \"[b]Note:[/b]\" at the end of the description:"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:228
msgid "To denote crucial information that could cause security issues or loss of data if not followed carefully, add a paragraph starting with \"[b]Warning:[/b]\" at the end of the description:"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:236
msgid "For deprecated properties, add a paragraph starting with \"[i]Deprecated.[/i]\". Notice the use of italics instead of bold:"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:243
msgid "In all the paragraphs described above, make sure the punctuation is part of the BBCode tags for consistency."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:247
msgid "I don't know what this method does!"
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:249
msgid "No problem. Leave it behind, and list the methods you skipped when you request a pull of your changes. Another writer will take care of it."
msgstr ""
#: ../../docs/community/contributing/class_reference_writing_guidelines.rst:252
msgid "You can still look at the methods' implementation in Godot's source code on GitHub. If you have doubts, feel free to ask on the `Q&A website <https://godotengine.org/qa/>`__ and `Godot Contributors Chat <https://chat.godotengine.org/>`_."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,117 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/content_guidelines.rst:4
msgid "Content guidelines"
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:6
msgid "This document is here to help us assess what we should include in the official documentation. Below, you will find a couple of principles and recommendations to write accessible content."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:10
msgid "We want to achieve two goals:"
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:12
msgid "**Empathize with our users.** We should write in a way that makes it easy for them to learn from the docs."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:14
msgid "**Write a complete reference manual**. Our goal here is not to teach programming foundations. Instead, we should provide a reference for how Godot's features work."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:19
msgid "Guidelines and principles"
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:21
msgid "Below are the guidelines we should strive to follow. They are not hard rules, though: exceptionally, a topic will require breaking one or more of these. Still, we should strive to achieve the two goals listed above."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:26
msgid "Writing complete and accessible documentation"
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:28
msgid "**A feature doesn't exist unless it is documented**. If a user can't find information about a feature and how it works, it doesn't exist to them. We should ensure that we cover everything Godot does."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:34
msgid "When adding or updating an engine feature, the documentation team needs to know about it. Contributors should open an issue on the `godot-docs` repository when their work gets merged and requires documentation."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:38
msgid "Do your best to keep documents **under 1000 words in length**. If a page goes past that threshold, consider splitting it into two parts if possible. Limiting page size forces us to write concisely and to break large documents so they each focus on a particular problem."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:43
msgid "Make it clear what **problem** each page or section of a page tackles and what the user will learn from it. Users need to know if they're reading the correct guide to solving problems they encounter. For example, instead of writing the heading \"Signals\", consider writing \"Reacting to changes with signals\". The second title makes it clear what the purpose of signals is."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:51
msgid "Long section titles lead to long entries in the side menu, which can make navigation cumbersome. Try to keep headings five words long or less."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:54
msgid "If the page assumes specific knowledge of other Godot features, mention it and link it to the corresponding documentation. For instance, a page about physics may use signals, in which case we could note that the page that introduces signals is a pre-requisite."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:60
msgid "Limiting cognitive load"
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:62
msgid "Limit the cognitive load required to read the documentation. The simpler and more explicit language we use, the more efficient it becomes for people to learn. You can do so by:"
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:66
msgid "Introducing only one new concept at a time whenever possible."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:67
msgid "Using simple English, as we recommend in our writing guidelines."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:68
msgid "Including one or more **concrete usage examples**. Prefer a real-world example to abstract code like ``foobar``."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:71
msgid "While many people may understand more complex language and abstract examples, you will lose others. Also, understandable writing and practical examples benefit everyone."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:75
msgid "Always make an effort to **put yourself in the user's shoes**. When we understand something thoroughly, it becomes evident to us. We may fail to think about details relevant to a newcomer, but **good documentation meets users where they are**. We should strive to explain each feature's capabilities or intended uses with the most straightforward language possible."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:81
msgid "Try to remember what you first needed to know when learning about the feature or concept. What new terms did you need to learn? What confused you? What was the hardest to grasp? You will want users to review your work, and we recommend you practice explaining the feature before writing about it."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:88
msgid "Having programming foundations is a pre-requisite to use a complex engine like Godot. Talking about variables, functions, or classes is acceptable. But we should favor plain language over specific terminology like \"metaprogramming\". If you need to use precise terms, be sure to define them."
msgstr ""
#: ../../docs/community/contributing/content_guidelines.rst:93
msgid "When a page assumes knowledge of another engine feature, declare it at the beginning and link to resources that cover what users need. You may also link to other websites for pre-requisites beyond the documentation's scope. For example, you could link to an introduction to programming in the getting started guide, or a website that teaches math theory in the math section."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,165 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/documentation_guidelines.rst:4
msgid "Documentation guidelines"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:6
msgid "This page describes the rules to follow if you want to contribute to Godot Engine by writing or reviewing documentation, or by translating existing documentation. Also, have a look at README of the `godot-docs GitHub repository <https://github.com/godotengine/godot-docs>`_ and the `docs front page <https://docs.godotengine.org>`_ on what steps to follow and how to contact the docs team."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:14
msgid "How to contribute"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:16
msgid "Creating or modifying documentation pages is mainly done via the `godot-docs GitHub repository <https://github.com/godotengine/godot-docs>`_. The HTML (or PDF and EPUB) documentation is generated from the .rst files (reStructuredText markup language) in that repository. Modifying those pages in a pull request and getting it merged will trigger a rebuild of the online documentation."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:23
msgid "For details on Git usage and the pull request workflow, please refer to the :ref:`doc_pr_workflow` page. Most of what it describes regarding the main godotengine/godot repository is also valid for the docs repository."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:28
msgid "The class reference's source files are in the `Godot engine repository <https://github.com/godotengine/godot>`_. We generate the :ref:`Godot API <doc_class_reference>` section of this documentation from them. If you want to update the description of a class, its methods, or properties, read :ref:`doc_updating_the_class_reference`."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:34
msgid "If you want to edit the **API reference**, please note that it should *not* be done in the godot-docs repository. Instead, you should edit the ``doc/classes/*`` XML files of Godot's main repository. These files are then later used to generate the in-editor documentation as well as the API reference of the online docs. Read more here: :ref:`doc_updating_the_class_reference`."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:42
msgid "The 'Edit on GitHub' link"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:44
msgid "If you're reading documentation on `docs.godotengine.org <https://docs.godotengine.org>`_, you'll see an **Edit on GitHub** hyperlink at the top right of the page. Once you've created a GitHub account, you can propose changes to a page you're reading as follows:"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:49
msgid "Click the **Edit on GitHub** button."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:51
msgid "On the GitHub page you're taken to, click the pencil icon in the top-right corner near the **Raw**, **Blame** and **History** buttons. It has the tooltip \"Edit the file in a fork of this project\"."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:55
msgid "Complete all the edits you want to make for that page."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:57
msgid "Summarize the changes you made in the form at the bottom of the page and click the button labelled **Propose file change** when done."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:60
msgid "On the following screens, click the **Create pull request** button until you see a message like *Username wants to merge 1 commit into godotengine:master from Username:patch-6*."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:64
msgid "A reviewer will evaluate your changes and incorporate them into the docs if they're acceptable. You might also be asked to make modifications to your changes before they're included."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:69
msgid "What makes good documentation?"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:71
msgid "Documentation should be well written in plain English, using well-formed sentences and various levels of sections and subsections. It should be clear and objective. Also, have a look at the :ref:`doc_docs_writing_guidelines`."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:75
msgid "We differentiate tutorial pages from other documentation pages by these definitions:"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:78
msgid "Tutorial: a page aiming at explaining how to use one or more concepts in the editor or scripts in order to achieve a specific goal with a learning purpose (e.g. \"Making a simple 2d Pong game\", \"Applying forces to an object\")."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:82
msgid "Documentation: a page describing precisely one and only one concept at a time, if possible exhaustively (e.g. the list of methods of the Sprite class, or an overview of the input management in Godot)."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:86
msgid "You are free to write the kind of documentation you wish, as long as you respect the following rules (and the ones on the repo)."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:90
msgid "Titles"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:92
msgid "Always begin pages with their title and a Sphinx reference name:"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:101
msgid "The reference allows linking to this page using the ``:ref:`` format, e.g. ``:ref:`doc_insert_your_title_here``` would link to the above example page (note the lack of leading underscore in the reference)."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:105
msgid "Also, avoid American CamelCase titles: title's first word should begin with a capitalized letter, and every following word should not. Thus, this is a good example:"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:109
msgid "Insert your title here"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:111
msgid "And this is a bad example:"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:113
msgid "Insert Your Title Here"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:115
msgid "Only project, people and node class names should have capitalized first letter."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:119
msgid "Translating existing pages"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:121
msgid "You can help to translate the official Godot documentation on our `Hosted Weblate <https://hosted.weblate.org/engage/godot-engine/>`_."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:None
msgid "Translation state"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:130
msgid "There also is the official `Godot i18n repository <https://github.com/godotengine/godot-docs-l10n>`_ where you can see when the data was last synchronized."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:135
msgid "License"
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:137
msgid "This documentation and every page it contains is published under the terms of the `Creative Commons Attribution 3.0 license (CC-BY-3.0) <https://tldrlegal.com/license/creative-commons-attribution-(cc)>`_, with attribution to \"Juan Linietsky, Ariel Manzur and the Godot community\"."
msgstr ""
#: ../../docs/community/contributing/documentation_guidelines.rst:140
msgid "By contributing to the documentation on the GitHub repository, you agree that your changes are distributed under this license."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,101 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/index.rst:2
msgid "Contributing"
msgstr ""
#: ../../docs/community/contributing/index.rst:4
msgid "Everyone is most welcome to contribute to Godot. Here are some ways in which you can contribute to the project:"
msgstr ""
#: ../../docs/community/contributing/index.rst:7
msgid "Improving the engine by fixing bugs, coding new features, or refining existing ones."
msgstr ""
#: ../../docs/community/contributing/index.rst:8
msgid "Writing or proofreading documentation. You can contribute both to this reference manual or the code reference."
msgstr ""
#: ../../docs/community/contributing/index.rst:10
msgid "Translating the editor or documentation from English to other languages."
msgstr ""
#: ../../docs/community/contributing/index.rst:11
msgid "Reporting issues or `writing detailed proposals <https://github.com/godotengine/godot-proposals/>`__."
msgstr ""
#: ../../docs/community/contributing/index.rst:15
msgid "Getting started"
msgstr ""
#: ../../docs/community/contributing/index.rst:17
msgid "You would like to contribute but you don't know how or what to do? You can get answers below."
msgstr ""
#: ../../docs/community/contributing/index.rst:29
msgid "Contributing to the engine"
msgstr ""
#: ../../docs/community/contributing/index.rst:31
msgid "The guides below explain how to contribute to the engine's core. You will learn about the code style, the contribution workflow, and more."
msgstr ""
#: ../../docs/community/contributing/index.rst:49
msgid "Writing documentation"
msgstr ""
#: ../../docs/community/contributing/index.rst:51
msgid "We always need help to improve the documentation, be it the class reference or the manual. Below, you can find our content and writing guidelines and concrete guides to make changes to the documentation."
msgstr ""
#: ../../docs/community/contributing/index.rst:56
msgid "Guidelines"
msgstr ""
#: ../../docs/community/contributing/index.rst:58
msgid "Here are the principles and guidelines we strive to follow to write accessible documentation."
msgstr ""
#: ../../docs/community/contributing/index.rst:70
msgid "Writing the manual"
msgstr ""
#: ../../docs/community/contributing/index.rst:80
msgid "Class reference guides"
msgstr ""
#: ../../docs/community/contributing/index.rst:82
msgid "The pages below focus on the class reference."
msgstr ""
#: ../../docs/community/contributing/index.rst:84
msgid "As the reference is included in the Godot editor, its source files are part of the `godot repository <https://github.com/godotengine/godot>`_. We use XML files to write it, so the process to contribute to the class reference differs from writing the online manual."
msgstr ""
#: ../../docs/community/contributing/index.rst:99
msgid "Translating the documentation"
msgstr ""
#: ../../docs/community/contributing/index.rst:101
msgid "The community is always working hard on making Godot and its documentation available to more people. Localizing the documentation is a colossal and ongoing effort you can be part of."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,97 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/updating_the_class_reference.rst:4
msgid "Contributing to the class reference"
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:8
msgid "The class reference is available online in the :ref:`classes <doc_class_reference>` section of the documentation and in the Godot editor, from the help menu."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:11
msgid "In the class reference, some methods, variables, and signals lack descriptions. Others changed with recent releases and need updates. The developers can't write the entire reference on their own. Godot needs you, and all of us, to contribute."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:16
msgid "**Important:** If you plan to make large changes, you should create an issue on the `godot-docs repository <https://github.com/godotengine/godot-docs/>`_ or comment on an existing issue. Doing so lets others know you're already taking care of a given class."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:23
msgid "You can find the writing guidelines for the class reference :ref:`here <doc_class_reference_writing_guidelines>`."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:25
msgid "For details on Git usage and the pull request workflow, please refer to the :ref:`doc_pr_workflow` page."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:28
msgid "If you want to translate the class reference from English to another language, see :ref:`doc_editor_and_docs_localization`."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:31
msgid "This guide is also available as a `video tutorial on YouTube <https://www.youtube.com/watch?v=5jeHXxeX-JY>`_."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:36
msgid "Not sure which class to contribute to? Take a look at the class reference's completion status `here <https://godotengine.github.io/doc-status/>`_."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:39
msgid "You can find the source files for the class reference in Godot's GitHub repository: `doc/classes/ <https://github.com/godotengine/godot/tree/master/doc/classes>`_."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:43
msgid "For some modules in the engine's source code, you'll find the XML files in the ``modules/<module_name>/doc_classes/`` directory instead."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:46
msgid "Always edit the API reference through these source XML files. Do not edit the generated ``.rst`` files :ref:`in the online documentation <doc_class_reference>`, hosted in the `godot-docs <https://github.com/godotengine/godot-docs>`_ repository."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:53
msgid "Unless you make minor changes, like fixing a typo, we do not recommend using the GitHub web editor to edit the class reference's XML."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:55
msgid "It lacks features to edit XML well, like keeping indentations consistent, and it does not allow amending commits based on reviews."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:57
msgid "Also, it doesn't allow you to test your changes in the engine or with validation scripts as described in :ref:`doc_class_reference_writing_guidelines_editing_xml`."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:62
msgid "Updating the documentation template"
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:64
msgid "When you create a new class or modify the engine's API, you need to re-generate the XML files in ``doc/classes/``."
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:66
msgid "To do so, you first need to compile Godot. See the :ref:`doc_introduction_to_the_buildsystem` page to learn how. Then, execute the compiled Godot binary from the Godot root directory with the ``--doctool`` option. For example, if you're on 64-bit Linux, the command is::"
msgstr ""
#: ../../docs/community/contributing/updating_the_class_reference.rst:73
msgid "The XML files in doc/classes should then be up-to-date with current Godot Engine features. You can then check what changed using the ``git diff`` command. Please only include changes that are relevant to your work on the API in your commits. You can discard changes in other XML files using ``git checkout``."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -37,154 +37,166 @@ msgid "The Godot video tutorials by `GDQuest <https://www.youtube.com/channel/UC
msgstr ""
#: ../../docs/community/tutorials.rst:15
msgid "If you're interested in Visual Scripting, `Emilio's tutorials <https://www.youtube.com/channel/UC9DR22-qohBDtZ74R3FxOZg>`_ may be worth a look."
msgstr ""
#: ../../docs/community/tutorials.rst:17
msgid "If you're interested in a complete introduction to programming using Godot and GDScript, the unofficial `Godot Tutorials <https://www.youtube.com/channel/UCnr9ojBEQGgwbcKsZC-2rIg>`_ YouTube channel is a good place to start."
msgstr ""
#: ../../docs/community/tutorials.rst:19
#: ../../docs/community/tutorials.rst:17
msgid "GDQuest's *Learn GDScript From Zero* is a free and open source interactive tutorial for absolute beginners to learn to program with Godot's GDScript language. It is available as a `desktop application <https://gdquest.itch.io/learn-godot-gdscript>`_ or `in the browser <https://gdquest.github.io/learn-gdscript>`_."
msgstr ""
#: ../../docs/community/tutorials.rst:21
#: ../../docs/community/tutorials.rst:19
msgid "Some tutorials mentioned below provide more advanced tutorials, e.g. on 3D or shaders."
msgstr ""
#: ../../docs/community/tutorials.rst:24
#: ../../docs/community/tutorials.rst:22
msgid "Video tutorials"
msgstr ""
#: ../../docs/community/tutorials.rst:26
#: ../../docs/community/tutorials.rst:24
msgid "`Godot Tutorials <https://www.youtube.com/channel/UCnr9ojBEQGgwbcKsZC-2rIg>`_ (2D, GDScript, Programming Basics)."
msgstr ""
#: ../../docs/community/tutorials.rst:27
msgid "`Emilio <https://www.youtube.com/channel/UC9DR22-qohBDtZ74R3FxOZg>`_ (2D, GDScript and VisualScript)."
#: ../../docs/community/tutorials.rst:25
msgid "`Emilio <https://www.youtube.com/channel/UC9DR22-qohBDtZ74R3FxOZg>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:28
#: ../../docs/community/tutorials.rst:26
msgid "`FinePointCGI <https://www.youtube.com/channel/UCSojAWUnEUTUcdA9iJ6bryQ>`_ (2D, 3D, GDScript and C#)."
msgstr ""
#: ../../docs/community/tutorials.rst:29
msgid "`GDQuest <https://www.youtube.com/channel/UCxboW7x0jZqFdvMdCFKTMsQ/playlists>`_ (2D and 3D, GDScript, VisualScript and C#)."
#: ../../docs/community/tutorials.rst:27
msgid "`GDQuest <https://www.youtube.com/channel/UCxboW7x0jZqFdvMdCFKTMsQ/playlists>`_ (2D and 3D, GDScript and C#)."
msgstr ""
#: ../../docs/community/tutorials.rst:30
#: ../../docs/community/tutorials.rst:28
msgid "`Game Development Center <https://www.youtube.com/c/GameDevelopmentCenter>`_ (2D, networked multiplayer, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:31
#: ../../docs/community/tutorials.rst:29
msgid "`Game Endeavor <https://www.youtube.com/channel/UCLweX1UtQjRjj7rs_0XQ2Eg/videos>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:32
#: ../../docs/community/tutorials.rst:30
msgid "`Game from Scratch <https://www.youtube.com/watch?v=iDEcP8Mc-7s&list=PLS9MbmO_ssyDk79j9ewONxV88fD5e_o5d>`_ (2D and 3D, GDScript and C#)."
msgstr ""
#: ../../docs/community/tutorials.rst:33
#: ../../docs/community/tutorials.rst:31
msgid "`HeartBeast <https://www.youtube.com/watch?v=wETY5_9kFtA&list=PL9FzW-m48fn2jlBu_0DRh7PvAt-GULEmd>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:34
msgid "`KidsCanCode <https://www.youtube.com/channel/UCNaPQ5uLX5iIEHUCLmfAgKg/playlists>`__ (2D and 3D, GDScript and VisualScript)."
#: ../../docs/community/tutorials.rst:32
msgid "`KidsCanCode <https://www.youtube.com/channel/UCNaPQ5uLX5iIEHUCLmfAgKg/playlists>`__ (2D and 3D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:35
#: ../../docs/community/tutorials.rst:33
msgid "`Mister Taft Creates <https://www.youtube.com/playlist?list=PL4vbr3u7UKWqwQlvwvgNcgDL1p_3hcNn2>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:36
msgid "`Miziziziz <https://www.youtube.com/playlist?list=PLmugv6_kd0qN6AyjG245_Pdak4MXKUx88>`_ (2D and 3D, GDScript)."
#: ../../docs/community/tutorials.rst:34
msgid "`Miziziziz <https://www.youtube.com/playlist?list=PLmugv6_kd0qNyt0WHVnac1f5IFzG-7grN>`_ (2D and 3D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:37
#: ../../docs/community/tutorials.rst:35
msgid "`P1X / Krzysztof Jankowski <https://www.youtube.com/playlist?list=PLvDk7UKhld4xGPovdB4IFtAHYMYjx_-3K>`_ (3D)."
msgstr ""
#: ../../docs/community/tutorials.rst:38
#: ../../docs/community/tutorials.rst:36
msgid "`Pigdev <https://www.youtube.com/playlist?list=PLPMN4vCRFdordS3E-3zi0Hdh7pAsbWQ6a>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:39
msgid "`Steincodes <https://www.youtube.com/c/steincodes/playlists>`__ (2D, GDScript and VisualScript)."
#: ../../docs/community/tutorials.rst:37
msgid "`Steincodes <https://www.youtube.com/c/steincodes/playlists>`__ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:40
#: ../../docs/community/tutorials.rst:38
msgid "`TheBuffED <https://www.youtube.com/watch?v=ygGaN1EOQEA&list=PLvN5Z3tTxXEDfQkt4Frg6ALirespSwZd7>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:41
#: ../../docs/community/tutorials.rst:39
msgid "`Code with Tom <https://www.youtube.com/playlist?list=PLiUQR4U_J9ec0k91iHPme_qtfS1nrWF3W>`_ (2D and 3D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:42
#: ../../docs/community/tutorials.rst:40
msgid "`BornCG <https://www.youtube.com/playlist?list=PLda3VoSoc_TSBBOBYwcmlamF1UrjVtccZ>`_ (2D and 3D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:43
msgid "`Gonkee <https://www.youtube.com/channel/UCJqCPFHdbc6443G3Sz6VYDw>`_ (2D and 3D, GDScript, Shaders)."
msgstr ""
#: ../../docs/community/tutorials.rst:44
#: ../../docs/community/tutorials.rst:41
msgid "`TheGuideKnight <https://www.youtube.com/playlist?list=PLYcTJBw32KtX2fvOdtO_fS3Nd6sxM71tn>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:45
#: ../../docs/community/tutorials.rst:42
msgid "`GDScript Dude <https://www.youtube.com/channel/UCQs0i6vKISElM6mh7OzLouQ>`_ (GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:46
#: ../../docs/community/tutorials.rst:43
msgid "`Garbaj <https://www.youtube.com/c/Garbaj/>`_ (3D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:47
#: ../../docs/community/tutorials.rst:44
msgid "`Kasper Frandsen <https://www.youtube.com/c/KasperFrandsen/>`_ (3D, Shaders)."
msgstr ""
#: ../../docs/community/tutorials.rst:50
#: ../../docs/community/tutorials.rst:45
msgid "`bitbrain <https://www.youtube.com/watch?v=lFIBn8kJ-IM&list=PL4AhUX6lGjJWfiDORSmEu8x_myelbe1p2>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:46
msgid "`Gwizz <https://www.youtube.com/@Gwizz1027>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:47
msgid "`Quiver <https://quiver.dev/>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:48
msgid "`Maker Tech <https://www.youtube.com/watch?v=0mUoRdYe0s4>`_ (2D, GDScript)."
msgstr ""
#: ../../docs/community/tutorials.rst:51
msgid "Text tutorials"
msgstr ""
#: ../../docs/community/tutorials.rst:52
msgid "`FinepointCGI website by Mitch <http://finepointcgi.io/>`__"
msgstr ""
#: ../../docs/community/tutorials.rst:53
msgid "`GDScript website by Andrew Wilkes <https://gdscript.com>`__"
msgid "`FinepointCGI website by Mitch <https://finepointcgi.io/>`__"
msgstr ""
#: ../../docs/community/tutorials.rst:54
msgid "`Godot Recipes by KidsCanCode <http://godotrecipes.com/>`__"
msgid "`GDScript website by Andrew Wilkes <https://gdscript.com>`__"
msgstr ""
#: ../../docs/community/tutorials.rst:55
msgid "`Steincodes <https://steincodes.tumblr.com>`__"
msgid "`Godot Recipes by KidsCanCode <https://kidscancode.org/godot_recipes/4.x/>`__"
msgstr ""
#: ../../docs/community/tutorials.rst:58
#: ../../docs/community/tutorials.rst:56
msgid "`Godot Tutorials by SomethingLikeGames <https://www.somethinglikegames.de/en/tags/godot-engine/>`__"
msgstr ""
#: ../../docs/community/tutorials.rst:59
msgid "Devlogs"
msgstr ""
#: ../../docs/community/tutorials.rst:60
#: ../../docs/community/tutorials.rst:61
msgid "`Andrea Catania (Physics & AI) <https://www.youtube.com/channel/UCm4RuvYtgpgFDTCgaEUT5uQ/videos>`_"
msgstr ""
#: ../../docs/community/tutorials.rst:61
#: ../../docs/community/tutorials.rst:62
msgid "`Bastiaan Olij (AR & VR) <https://www.youtube.com/channel/UCrbLJYzJjDf2p-vJC011lYw/videos>`_"
msgstr ""
#: ../../docs/community/tutorials.rst:64
msgid "Resources"
#: ../../docs/community/tutorials.rst:63
msgid "`DevDuck (2D) <https://www.youtube.com/@devduck/videos>`_"
msgstr ""
#: ../../docs/community/tutorials.rst:66
msgid "Resources"
msgstr ""
#: ../../docs/community/tutorials.rst:68
msgid "`awesome-godot: A curated list of free/libre plugins, scripts and add-ons <https://github.com/godotengine/awesome-godot>`_"
msgstr ""
#: ../../docs/community/tutorials.rst:67
#: ../../docs/community/tutorials.rst:69
msgid "`Zeef Godot Engine: A curated directory of resources by Andre Schmitz <https://godot-engine.zeef.com/andre.antonio.schmitz>`_"
msgstr ""

View File

@@ -0,0 +1,245 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:4
msgid "Best practices for engine contributors"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:7
msgid "Introduction"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:9
msgid "Godot has a large amount of users who have the ability to contribute because the project itself is aimed mainly at users who can code. That being said, not all of them have the same level of experience working in large projects or in software engineering, which can lead to common misunderstandings and bad practices during the process of contributing code to the project."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:16
msgid "Language"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:18
msgid "The scope of this document is to be a list of best practices for contributors to follow, as well as to create a language they can use to refer to common situations that arise in the process of submitting their contributions."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:22
msgid "While a generalized list of software development best practices might be useful, we'll focus on the situations that are most common in our project."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:25
msgid "Contributions are most of the time categorized as bug fixes, enhancements or new features. To abstract this idea, we will call them *Solutions*, because they always seek to solve something that can be described as a *Problem*."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:30
msgid "Best Practices"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:33
msgid "#1: The problem always comes first"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:35
msgid "Many contributors are extremely creative and just enjoy the process of designing abstract data structures, creating nice user interfaces, or simply love programming. Whatever the case may be, they come up with cool ideas, which may or may not solve real problems."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:42
msgid "These are usually called *solutions in search of a problem*. In an ideal world, they would not be harmful but, in reality, code takes time to write, takes up space and requires maintenance once it exists. Avoiding the addition of anything unnecessary is always considered a good practice in software development."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:48
msgid "#2: To solve the problem, it has to exist in the first place"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:50
msgid "This is a variation of the previous practice. Adding anything unnecessary is not a good idea, but what constitutes what is necessary and what isn't?"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:55
msgid "The answer to this question is that the problem needs to *exist* before it can be actually solved. It must not be speculation or a belief. The user must be using the software as intended to create something they *need*. In this process, the user may stumble upon a problem that requires a solution to proceed, or in order to achieve greater productivity. In this case, *a solution is needed*."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:61
msgid "Believing that problems may arise in the future and that the software needs to be ready to solve them by the time they appear is called *\"Future proofing\"* and its characterized by lines of thought such as:"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:65
msgid "I think it would be useful for users to..."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:66
msgid "I think users will eventually need to..."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:68
msgid "This is generally considered a bad habit because trying to solve problems that *don't actually exist* in the present will often lead to code that will be written but never used, or that is considerably more complex to use and maintain than it needs to be."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:74
msgid "#3: The problem has to be complex or frequent"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:76
msgid "Software is designed to solve problems, but we can't expect it to solve *every problem that exists under the sun*. As a game engine, Godot will help you make games better and faster, but it won't make an *entire game* for you. A line must be drawn somewhere."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:83
msgid "Whether a problem is worth solving is determined by the effort that is required to work around it. The required effort depends on:"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:86
msgid "The complexity of the problem"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:87
msgid "The frequency the problem"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:89
msgid "If the problem is *too complex* for most users to solve, then the software should offer a ready-made solution for it. Likewise, if the problem is easy for the user to work around, offering such a solution is unnecessary."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:93
msgid "The exception, however, is when the user encounters a problem *frequently enough* that having to do the simple solution every time becomes an annoyance. In this case, the software should offer a solution to simplify the use case."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:97
msgid "It's usually easy to tell if a problem is complex or frequent, but it can be difficult. This is why discussing with other developers (next point) is always advised."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:102
msgid "#4: The solution must be discussed with others"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:104
msgid "Often, users will be immersed in their own projects when they stumble upon problems. These users will naturally try to solve the problem from their perspective, thinking only about their own use case. As a result, user proposed solutions don't always contemplate all use cases and are often biased towards the user's own requirements."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:112
msgid "For developers, the perspective is different. They may find the user's problem too unique to justify a solution (instead of a workaround), or they might suggest a partial (usually simpler or lower level) solution that applies to a wider range of known problems and leave the rest of the solution up to the user."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:118
msgid "In any case, before attempting to contribute, it is important to discuss the actual problems with the other developers or contributors, so a better agreement on implementation can be reached."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:122
msgid "The only exception is when an area of code has a clear agreed upon owner, who talks to users directly and has the most knowledge to implement a solution directly."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:126
msgid "Also, Godot's philosophy is to favor ease of use and maintenance over absolute performance. Performance optimizations will be considered, but they may not be accepted if they make something too difficult to use or if they add too much complexity to the codebase."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:132
msgid "#5: To each problem, its own solution"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:134
msgid "For programmers, it is always a most enjoyable challenge to find the most optimal solutions to problems. It is possible to go overboard, though. Sometimes, contributors will try to come up with solutions that solve as many problems as possible."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:139
msgid "The situation will often take a turn for the worse when, in order to make this solution appear even more fantastic and flexible, the pure speculation-based problems (as described in #2) also make their appearance on stage."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:145
msgid "The main problem is that, in reality, it rarely works this way. Most of the time, writing an individual solution to each problem results in code that is simpler and more maintainable."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:149
msgid "Additionally, solutions that target individual problems are better for the users. Targeted solutions allow users find something that does exactly what they need, without having to learn a more complex system they will only need for simple tasks."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:154
msgid "Big and flexible solutions also have an additional drawback which is that, over time, they are rarely flexible enough for all users. Users end up requesting more and more functionality which ends up making the API and codebase more and more complex."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:160
msgid "#6: Cater to common use cases, leave the door open for the rare ones"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:162
msgid "This is a continuation of the previous point, which further explains why this way of thinking and designing software is preferred."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:165
msgid "As mentioned before (in point #2), it is very difficult for us (as human beings who design software) to actually understand all future user needs. Trying to write very flexible structures that cater to many use cases at once is often a mistake."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:170
msgid "We may come up with something we believe is brilliant but later find out that users will never even use half of it or that they require features that don't quite fit into our original design, forcing us to either throw it away or make it even more complex."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:175
msgid "The question is then, how do we design software that both allows users to do *what we know they need to do* now and allows them to do *what we don't yet know they'll need to do* in the future?"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:181
msgid "The answer to this question is that, to ensure users still can do what they want to do, we need to give them access to a *low level API* that they can use to achieve what they want, even if it's more work for them because it means reimplementing some logic that already exists."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:186
msgid "In real-life scenarios, these use cases will be at most rare and uncommon anyway, so it makes sense a custom solution needs to be written. This is why it's important to still provide users the basic building blocks to do it."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:191
msgid "#7: Prefer local solutions"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:193
msgid "When looking for a solution to a problem, be it implementing a new feature or fixing a bug, sometimes the easiest path is to add data or a new function in the core layers of code."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:197
msgid "The main problem here is, adding something to the core layers that will only be used from a single location far away will not only make the code more difficult to follow (split in two), but also make the core API larger, more complex, more difficult to understand in general."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:202
msgid "This is bad, because readability and cleanness of core APIs is always of extreme importance given how much code relies on it, and because it's key for new contributors as a starting point to learning the codebase."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:210
msgid "A common reason for wanting to do this is that it's usually less code to simply add a hack in the core layers."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:213
msgid "Doing so is not advised. Generally, the code for a solution should be closer to where the problem originates, even if it involves additional, duplicated, more complex, or less efficient code. More creativity might be needed, but this path is always the advised one."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:219
msgid "#8: Don't use complex canned solutions for simple problems"
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:221
msgid "Not every problem has a simple solution and, many times, the right choice is to use a third party library to solve the problem."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:224
msgid "As Godot requires to be shipped in a large amount of platforms, we can't link libraries dynamically. Instead, we bundle them in our source tree."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:229
msgid "As a result, we are very picky with what goes in, and we tend to prefer smaller libraries (single header ones are our favorite). We will only bundle something larger if there is no other choice."
msgstr ""
#: ../../docs/contributing/development/best_practices_for_engine_contributors.rst:235
msgid "Libraries must use a permissive enough license to be included into Godot. Some examples of acceptable licenses are Apache 2.0, BSD, MIT, ISC, and MPL 2.0. In particular, we cannot accept libraries licensed under the GPL or LGPL since these licenses effectively disallow static linking in proprietary software (which Godot is distributed as in most exported projects). This requirement also applies to the editor, since we may want to run it on iOS in the long term. Since iOS doesn't support dynamic linking, static linking is the only option on that platform."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,303 +16,303 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/code_style_guidelines.rst:4
#: ../../docs/contributing/development/code_style_guidelines.rst:4
msgid "Code style guidelines"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:8
#: ../../docs/contributing/development/code_style_guidelines.rst:8
msgid "When contributing to Godot's source code, you will be expected to follow the style guidelines outlined below. Some of them are checked via the Continuous Integration process and reviewers will ask you to fix potential issues, so best setup your system as outlined below to ensure all your commits follow the guidelines."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:15
#: ../../docs/contributing/development/code_style_guidelines.rst:15
msgid "C++ and Objective-C"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:17
msgid "There are no written guidelines, but the code style agreed upon by the developers is enforced via the `clang-format <http://clang.llvm.org/docs/ClangFormat.html>`__ code beautifier, which takes care for you of all our conventions. To name a few:"
#: ../../docs/contributing/development/code_style_guidelines.rst:17
msgid "There are no written guidelines, but the code style agreed upon by the developers is enforced via the `clang-format <https://clang.llvm.org/docs/ClangFormat.html>`__ code beautifier, which takes care for you of all our conventions. To name a few:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:22
#: ../../docs/contributing/development/code_style_guidelines.rst:22
msgid "Indentation and alignment are both tab based (respectively one and two tabs)"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:23
#: ../../docs/contributing/development/code_style_guidelines.rst:23
msgid "One space around math and assignments operators as well as after commas"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:24
#: ../../docs/contributing/development/code_style_guidelines.rst:24
msgid "Pointer and reference operators are affixed to the variable identifier, not to the type name"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:26
#: ../../docs/contributing/development/code_style_guidelines.rst:26
msgid "See further down regarding header includes"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:28
#: ../../docs/contributing/development/code_style_guidelines.rst:28
msgid "The rules used by clang-format are outlined in the `.clang-format <https://github.com/godotengine/godot/blob/master/.clang-format>`__ file of the Godot repository."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:32
#: ../../docs/contributing/development/code_style_guidelines.rst:32
msgid "As long as you ensure that your style matches the surrounding code and that you not introducing trailing whitespace or space-based indentation, you should be fine. If you plan to contribute regularly however, we strongly advise that you setup clang-format locally to check and automatically fix all your commits."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:37
#: ../../docs/contributing/development/code_style_guidelines.rst:37
msgid "Godot's code style should *not* be applied to third-party code, i.e. that is included in Godot's source tree but was not written specifically for our project. Such code usually come from different upstream projects with their own style guides (or lack thereof), and don't want to introduce differences that would make syncing with upstream repositories harder."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:44
#: ../../docs/contributing/development/code_style_guidelines.rst:44
msgid "Third-party code is usually included in the ``thirdparty/`` folder and can thus easily be excluded from formatting scripts. For the rare cases where a third-party code snippet needs to be included directly within a Godot file, you can use ``/* clang-format off */`` and ``/* clang-format on */`` to tell clang-format to ignore a chunk of code."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:53
#: ../../docs/contributing/development/code_style_guidelines.rst:53
msgid "These guidelines only cover code formatting. See :ref:`doc_cpp_usage_guidelines` for a list of language features that are permitted in pull requests."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:57
#: ../../docs/contributing/development/code_style_guidelines.rst:57
msgid "Using clang-format locally"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:59
#: ../../docs/contributing/development/code_style_guidelines.rst:59
msgid "First of all, you will need to install clang-format. As of now, you need to use **clang-format 13** to be compatible with Godot's format. Later versions might be suitable, but previous versions may not support all used options, or format some things differently, leading to style issues in pull requests."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:65
#: ../../docs/community/contributing/code_style_guidelines.rst:270
#: ../../docs/contributing/development/code_style_guidelines.rst:65
#: ../../docs/contributing/development/code_style_guidelines.rst:269
msgid "Installation"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:67
#: ../../docs/contributing/development/code_style_guidelines.rst:67
msgid "Here's how to install clang-format:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:69
msgid "Linux: It will usually be available out-of-the-box with the clang toolchain packaged by your distribution. If your distro version is not the required one, you can download a pre-compiled version from the `LLVM website <http://releases.llvm.org/download.html>`__, or if you are on a Debian derivative, use the `upstream repos <http://apt.llvm.org/>`__."
#: ../../docs/contributing/development/code_style_guidelines.rst:69
msgid "Linux: It will usually be available out-of-the-box with the clang toolchain packaged by your distribution. If your distro version is not the required one, you can download a pre-compiled version from the `LLVM website <https://releases.llvm.org/download.html>`__, or if you are on a Debian derivative, use the `upstream repos <https://apt.llvm.org/>`__."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:74
msgid "macOS and Windows: You can download precompiled binaries from the `LLVM website <http://releases.llvm.org/download.html>`__. You may need to add the path to the binary's folder to your system's ``PATH`` environment variable to be able to call ``clang-format`` out of the box."
#: ../../docs/contributing/development/code_style_guidelines.rst:74
msgid "macOS and Windows: You can download precompiled binaries from the `LLVM website <https://releases.llvm.org/download.html>`__. You may need to add the path to the binary's folder to your system's ``PATH`` environment variable to be able to call ``clang-format`` out of the box."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:79
#: ../../docs/contributing/development/code_style_guidelines.rst:79
msgid "You then have different possibilities to apply clang-format to your changes:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:82
#: ../../docs/community/contributing/code_style_guidelines.rst:282
#: ../../docs/contributing/development/code_style_guidelines.rst:82
#: ../../docs/contributing/development/code_style_guidelines.rst:281
msgid "Manual usage"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:84
#: ../../docs/contributing/development/code_style_guidelines.rst:84
msgid "You can apply clang-format manually one or more files with the following command:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:91
#: ../../docs/contributing/development/code_style_guidelines.rst:91
msgid "``-i`` means that the changes should be written directly to the file (by default clang-format would only output the fixed version to the terminal)."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:93
#: ../../docs/contributing/development/code_style_guidelines.rst:93
msgid "The path can point to several files, either one after the other or using wildcards like in a typical Unix shell. Be careful when globbing so that you don't run clang-format on compiled objects (.o and .a files) that are in Godot's tree. So better use ``core/*.{cpp,h}`` than ``core/*``."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:99
#: ../../docs/community/contributing/code_style_guidelines.rst:297
#: ../../docs/contributing/development/code_style_guidelines.rst:99
#: ../../docs/contributing/development/code_style_guidelines.rst:296
msgid "Pre-commit hook"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:101
#: ../../docs/contributing/development/code_style_guidelines.rst:101
msgid "For ease of use, we provide a pre-commit hook for Git that will run clang-format automatically on all your commits to check them, and let you apply its changes in the final commit."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:105
#: ../../docs/contributing/development/code_style_guidelines.rst:105
msgid "This \"hook\" is a script which can be found in ``misc/hooks``, refer to that folder's README.md for installation instructions."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:108
#: ../../docs/contributing/development/code_style_guidelines.rst:108
msgid "If your clang-format is not in the ``PATH``, you may have to edit the ``pre-commit-clang-format`` to point to the correct binary for it to work. The hook was tested on Linux and macOS, but should also work in the Git Shell on Windows."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:114
#: ../../docs/contributing/development/code_style_guidelines.rst:114
msgid "IDE plugin"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:116
#: ../../docs/contributing/development/code_style_guidelines.rst:116
msgid "Most IDEs or code editors have beautifier plugins that can be configured to run clang-format automatically, for example each time you save a file."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:119
#: ../../docs/contributing/development/code_style_guidelines.rst:119
msgid "Here is a non-exhaustive list of beautifier plugins for some IDEs:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:121
msgid "Qt Creator: `Beautifier plugin <http://doc.qt.io/qtcreator/creator-beautifier.html>`__"
#: ../../docs/contributing/development/code_style_guidelines.rst:121
msgid "Qt Creator: `Beautifier plugin <https://doc.qt.io/qtcreator/creator-beautifier.html>`__"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:122
#: ../../docs/contributing/development/code_style_guidelines.rst:122
msgid "Visual Studio Code: `Clang-Format <https://marketplace.visualstudio.com/items?itemName=xaver.clang-format>`__"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:123
#: ../../docs/contributing/development/code_style_guidelines.rst:123
msgid "Visual Studio: `ClangFormat <https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.ClangFormat>`__"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:124
#: ../../docs/contributing/development/code_style_guidelines.rst:124
msgid "vim: `vim-clang-format <https://github.com/rhysd/vim-clang-format>`__"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:125
#: ../../docs/contributing/development/code_style_guidelines.rst:125
msgid "CLion: Starting from version ``2019.1``, no plugin is required. Instead, enable `ClangFormat <https://www.jetbrains.com/help/clion/clangformat-as-alternative-formatter.html#clion-support>`__"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:128
#: ../../docs/contributing/development/code_style_guidelines.rst:128
msgid "(Pull requests welcome to extend this list with tested plugins.)"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:133
#: ../../docs/contributing/development/code_style_guidelines.rst:133
msgid "Header includes"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:135
#: ../../docs/contributing/development/code_style_guidelines.rst:135
msgid "When adding new C++ or Objective-C files or including new headers in existing ones, the following rules should be followed:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:138
#: ../../docs/contributing/development/code_style_guidelines.rst:138
msgid "The first lines in the file should be Godot's copyright header and MIT license, copy-pasted from another file. Make sure to adjust the filename."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:140
#: ../../docs/contributing/development/code_style_guidelines.rst:140
msgid "In a ``.h`` header, include guards should be used with the form ``FILENAME_H``."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:143
#: ../../docs/contributing/development/code_style_guidelines.rst:143
msgid "In a ``.cpp`` file (e.g. ``filename.cpp``), the first include should be the one where the class is declared (e.g. ``#include \"filename.h\"``), followed by an empty line for separation."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:146
#: ../../docs/contributing/development/code_style_guidelines.rst:146
msgid "Then come headers from Godot's own code base, included in alphabetical order (enforced by ``clang-format``) with paths relative to the root folder. Those includes should be done with quotes, e.g. ``#include \"core/object.h\"``. The block of Godot header includes should then be followed by an empty line for separation."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:151
#: ../../docs/contributing/development/code_style_guidelines.rst:151
msgid "Finally, third-party headers (either from ``thirdparty`` or from the system's include paths) come next and should be included with the < and > symbols, e.g. ``#include <png.h>``. The block of third-party headers should also be followed by an empty line for separation."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:155
#: ../../docs/contributing/development/code_style_guidelines.rst:155
msgid "Godot and third-party headers should be included in the file that requires them, i.e. in the `.h` header if used in the declarative code or in the `.cpp` if used only in the imperative code."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:159
#: ../../docs/contributing/development/code_style_guidelines.rst:159
msgid "Example:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:247
#: ../../docs/contributing/development/code_style_guidelines.rst:247
msgid "Java"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:249
#: ../../docs/contributing/development/code_style_guidelines.rst:249
msgid "Godot's Java code (mostly in ``platform/android``) is also enforced via ``clang-format``, so see the instructions above to set it up. Keep in mind that this style guide only applies to code written and maintained by Godot, not third-party code such as the ``java/src/com/google`` subfolder."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:255
#: ../../docs/contributing/development/code_style_guidelines.rst:255
msgid "Python"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:257
#: ../../docs/contributing/development/code_style_guidelines.rst:257
msgid "Godot's SCons buildsystem is written in Python, and various scripts included in the source tree are also using Python."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:260
#: ../../docs/contributing/development/code_style_guidelines.rst:260
msgid "For those, we follow the `Black style guide <https://github.com/psf/black#the-black-code-style>`__. Blacken your Python changes using `Black <https://pypi.org/project/black/>`__."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:264
#: ../../docs/contributing/development/code_style_guidelines.rst:264
msgid "Using black locally"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:266
msgid "First of all, you will need to install black. Black requires Python 3.6.0+ to run."
#: ../../docs/contributing/development/code_style_guidelines.rst:266
msgid "First of all, you will need to install Black. Black requires Python 3.7+ to run."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:272
#: ../../docs/contributing/development/code_style_guidelines.rst:271
msgid "Here's how to install black:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:279
#: ../../docs/contributing/development/code_style_guidelines.rst:278
msgid "You then have different possibilities to apply black to your changes:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:284
#: ../../docs/contributing/development/code_style_guidelines.rst:283
msgid "You can apply ``black`` manually to one or more files with the following command:"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:291
#: ../../docs/contributing/development/code_style_guidelines.rst:290
msgid "``-l 120`` means that the allowed number of characters per line is 120. This number was agreed upon by the developers."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:293
#: ../../docs/contributing/development/code_style_guidelines.rst:292
msgid "The path can point to several files, either one after the other or using wildcards like in a typical Unix shell."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:299
#: ../../docs/contributing/development/code_style_guidelines.rst:298
msgid "For ease of use, we provide a pre-commit hook for Git that will run black automatically on all your commits to check them, and let you apply its changes in the final commit."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:303
#: ../../docs/contributing/development/code_style_guidelines.rst:302
msgid "This \"hook\" is a script which can be found in ``misc/hooks``. Refer to that folder's ``README.md`` for installation instructions."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:308
#: ../../docs/contributing/development/code_style_guidelines.rst:307
msgid "Editor integration"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:310
#: ../../docs/contributing/development/code_style_guidelines.rst:309
msgid "Many IDEs or code editors have beautifier plugins that can be configured to run black automatically, for example each time you save a file. For details you can check `Black editor integration <https://github.com/psf/black#editor-integration>`__."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:315
#: ../../docs/contributing/development/code_style_guidelines.rst:314
msgid "Comment style guide"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:317
#: ../../docs/contributing/development/code_style_guidelines.rst:316
msgid "This comment style guide applies to all programming languages used within Godot's codebase."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:320
#: ../../docs/contributing/development/code_style_guidelines.rst:319
msgid "Begin comments with a space character to distinguish them from disabled code."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:321
#: ../../docs/contributing/development/code_style_guidelines.rst:320
msgid "Use sentence case for comments. Begin comments with an uppercase character and always end them with a period."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:323
#: ../../docs/contributing/development/code_style_guidelines.rst:322
msgid "Reference variable/function names and values using backticks."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:324
#: ../../docs/contributing/development/code_style_guidelines.rst:323
msgid "Wrap comments to ~100 characters."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:325
msgid "You can use ``TODO:``, ``FIXME:``, ``NOTE:``, or ``HACK:`` as adominitions when needed."
#: ../../docs/contributing/development/code_style_guidelines.rst:324
msgid "You can use ``TODO:``, ``FIXME:``, ``NOTE:``, or ``HACK:`` as admonitions when needed."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:328
#: ../../docs/community/contributing/code_style_guidelines.rst:351
#: ../../docs/contributing/development/code_style_guidelines.rst:327
#: ../../docs/contributing/development/code_style_guidelines.rst:350
msgid "**Example:**"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:336
#: ../../docs/contributing/development/code_style_guidelines.rst:335
msgid "Don't repeat what the code says in a comment. Explain the *why* rather than *how*."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:338
#: ../../docs/contributing/development/code_style_guidelines.rst:337
msgid "**Bad:**"
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:345
#: ../../docs/contributing/development/code_style_guidelines.rst:344
msgid "You can use Javadoc-style comments above function or macro definitions. It's recommended to use Javadoc-style comments *only* for methods which are not exposed to scripting. This is because exposed methods should be documented in the :ref:`class reference XML <doc_updating_the_class_reference>` instead."
msgstr ""
#: ../../docs/community/contributing/code_style_guidelines.rst:363
#: ../../docs/contributing/development/code_style_guidelines.rst:362
msgid "For member variables, don't use Javadoc-style comments but use single-line comments instead:"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,251 +16,287 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/compiling_for_android.rst:4
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:4
msgid "Compiling for Android"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:10
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:10
msgid "This page describes how to compile Android export template binaries from source. If you're looking to export your project to Android instead, read :ref:`doc_exporting_for_android`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:14
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:14
msgid "Note"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:16
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:16
msgid "In most cases, using the built-in deployer and export templates is good enough. Compiling the Android APK manually is mostly useful for custom builds or custom packages for the deployer."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:20
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:20
msgid "Also, you still need to follow the steps mentioned in the :ref:`doc_exporting_for_android` tutorial before attempting to build a custom export template."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:25
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:25
msgid "Requirements"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:27
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:27
msgid "For compiling under Windows, Linux or macOS, the following is required:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:29
msgid "`Python 3.5+ <https://www.python.org/downloads/>`_."
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:29
msgid "`Python 3.6+ <https://www.python.org/downloads/>`_."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:30
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:30
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`_ build system."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:31
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:31
msgid "`Android SDK <https://developer.android.com/studio/#command-tools>`_ (command-line tools are sufficient)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:34
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:34
msgid "Required SDK components will be automatically installed."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:35
msgid "On Linux, **do not use an Android SDK provided by your distribution's repositories as it will often be outdated**."
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:36
msgid "On Linux,"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:38
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:36
msgid "**do not use an Android SDK provided by your distribution's repositories as it will often be outdated**."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:38
msgid "Gradle (will be downloaded and installed automatically if missing)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:39
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:39
msgid "JDK 11 (either OpenJDK or Oracle JDK)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:41
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:41
msgid "You can download a build from `ojdkbuild <https://github.com/ojdkbuild/ojdkbuild>`_."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:43
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:43
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:46
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:46
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:52
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:52
msgid "Setting up the buildsystem"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:54
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:54
msgid "Set the environment variable ``ANDROID_SDK_ROOT`` to point to the Android SDK. If you downloaded the Android command-line tools, this would be the folder where you extracted the contents of the ZIP archive."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:58
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:58
msgid "Install the necessary SDK components in this folder:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:60
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:60
msgid "Accept the SDK component licenses by running the following command where ``android_sdk_path`` is the path to the Android SDK, then answering all the prompts with ``y``:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:67
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:67
msgid "Complete setup by running the following command where ``android_sdk_path`` is the path to the Android SDK."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:73
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:73
msgid "To set the environment variable on Windows, press :kbd:`Windows + R`, type \"control system\", then click on **Advanced system settings** in the left pane, then click on **Environment variables** on the window that appears."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:77
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:77
msgid "To set the environment variable on Linux or macOS, use ``export ANDROID_SDK_ROOT=/path/to/android-sdk`` where ``/path/to/android-sdk`` points to the root of the SDK directories."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:82
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:82
msgid "Building the export templates"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:84
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:84
msgid "Godot needs two export templates for Android: the optimized \"release\" template (``android_release.apk``) and the debug template (``android_debug.apk``). As Google will require all APKs to include ARMv8 (64-bit) libraries starting from August 2019, the commands below will build an APK containing both ARMv7 and ARMv8 libraries."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:90
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:90
msgid "Compiling the standard export templates is done by calling SCons from the Godot root directory with the following arguments:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:93
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:93
msgid "Release template (used when exporting with **Debugging Enabled** unchecked)"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:106
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:106
msgid "The resulting APK will be located at ``bin/android_release.apk``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:108
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:108
msgid "Debug template (used when exporting with **Debugging Enabled** checked)"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:121
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:121
msgid "The resulting APK will be located at ``bin/android_debug.apk``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:124
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:125
msgid "If you want to enable Vulkan validation layers, see :ref:`Vulkan validation layers on Android <doc_vulkan_validation_layers_android>`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:129
msgid "Adding support for x86 devices"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:126
msgid "If you also want to include support for x86 and x86-64 devices, run the SCons command a third and fourth time with the ``android_arch=x86``, and ``android_arch=x86_64`` arguments before building the APK with Gradle. For example, for the release template:"
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:131
msgid "If you also want to include support for x86 and x86-64 devices, run the SCons command a third and fourth time with the ``arch=x86_32``, and ``arch=x86_64`` arguments before building the APK with Gradle. For example, for the release template:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:144
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:149
msgid "This will create a fat binary that works on all platforms. The final APK size of exported projects will depend on the platforms you choose to support when exporting; in other words, unused platforms will be removed from the APK."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:150
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:155
msgid "Cleaning the generated export templates"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:152
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:157
msgid "You can use the following commands to remove the generated export templates:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:164
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:169
msgid "Using the export templates"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:166
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:171
msgid "Godot needs release and debug APKs that were compiled against the same version/commit as the editor. If you are using official binaries for the editor, make sure to install the matching export templates, or build your own from the same version."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:171
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:176
msgid "When exporting your game, Godot opens the APK, changes a few things inside and adds your files."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:175
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:180
msgid "Installing the templates"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:177
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:182
msgid "The newly-compiled templates (``android_debug.apk`` and ``android_release.apk``) must be copied to Godot's templates folder with their respective names. The templates folder can be located in:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:181
msgid "Windows: ``%APPDATA%\\Godot\\templates\\<version>\\``"
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:186
msgid "Windows: ``%APPDATA%\\Godot\\export_templates\\<version>\\``"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:182
msgid "Linux: ``$HOME/.local/share/godot/templates/<version>/``"
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:187
msgid "Linux: ``$HOME/.local/share/godot/export_templates/<version>/``"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:183
msgid "macOS: ``$HOME/Library/Application Support/Godot/templates/<version>/``"
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:188
msgid "macOS: ``$HOME/Library/Application Support/Godot/export_templates/<version>/``"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:185
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:190
msgid "``<version>`` is of the form ``major.minor[.patch].status`` using values from ``version.py`` in your Godot source repository (e.g. ``3.0.5.stable`` or ``3.1.dev``). You also need to write this same version string to a ``version.txt`` file located next to your export templates."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:192
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:197
msgid "However, if you are writing your custom modules or custom C++ code, you might instead want to configure your APKs as custom export templates here:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:198
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:203
msgid "You don't even need to copy them, you can just reference the resulting file in the ``bin\\`` directory of your Godot source folder, so that the next time you build you will automatically have the custom templates referenced."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:204
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:209
msgid "Building the Godot editor"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:211
msgid "Compiling the editor is done by calling SCons from the Godot root directory with the following arguments:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:227
msgid "The resulting APK will be located at ``bin/android_editor.apk``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:230
msgid "Removing the Editor templates"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:232
msgid "You can use the following commands to remove the generated editor templates:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:243
msgid "Installing the Godot editor"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:245
msgid "With an Android device with Developer Options enabled, connect the Android device to your computer via its charging cable to a USB/USB-C port. Open up a Terminal/Command Prompt and run the following commands from the root directory with the following arguments:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:253
msgid "Troubleshooting"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:207
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:256
msgid "Platform doesn't appear in SCons"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:209
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:258
msgid "Double-check that you've set the ``ANDROID_SDK_ROOT`` environment variable. This is required for the platform to appear in SCons' list of detected platforms. See :ref:`Setting up the buildsystem <doc_android_setting_up_the_buildsystem>` for more information."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:216
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:265
msgid "Application not installed"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:218
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:267
msgid "Android might complain the application is not correctly installed. If so:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:221
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:270
msgid "Check that the debug keystore is properly generated."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:222
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:271
msgid "Check that the jarsigner executable is from JDK 8."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:224
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:273
msgid "If it still fails, open a command line and run `logcat <https://developer.android.com/studio/command-line/logcat>`_:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:230
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:279
msgid "Then check the output while the application is installed; the error message should be presented there. Seek assistance if you can't figure it out."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:235
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:284
msgid "Application exits immediately"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:237
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:286
msgid "If the application runs but exits immediately, this might be due to one of the following reasons:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:240
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:289
msgid "Make sure to use export templates that match your editor version; if you use a new Godot version, you *have* to update the templates too."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:242
msgid "``libgodot_android.so`` is not in ``libs/<android_arch>/`` where ``<android_arch>`` is the device's architecture."
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:291
msgid "``libgodot_android.so`` is not in ``libs/<arch>/`` where ``<arch>`` is the device's architecture."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:244
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:293
msgid "The device's architecture does not match the exported one(s). Make sure your templates were built for that device's architecture, and that the export settings included support for that architecture."
msgstr ""
#: ../../docs/development/compiling/compiling_for_android.rst:248
#: ../../docs/contributing/development/compiling/compiling_for_android.rst:297
msgid "In any case, ``adb logcat`` should also show the cause of the error."
msgstr ""

View File

@@ -0,0 +1,113 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:4
msgid "Compiling for iOS"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:10
msgid "This page describes how to compile iOS export template binaries from source. If you're looking to export your project to iOS instead, read :ref:`doc_exporting_for_ios`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:16
msgid "`Python 3.6+ <https://www.python.org/downloads/macos/>`_."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:17
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`_ build system."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:18
msgid "`Xcode <https://apps.apple.com/us/app/xcode/id497799835>`_ (or the more lightweight Command Line Tools for Xcode)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:21
msgid "If you are building the ``master`` branch:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:23
msgid "Download and follow README instructions to build a static ``.xcframework`` from the `MoltenVK SDK <https://github.com/KhronosGroup/MoltenVK#fetching-moltenvk-source-code>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:26
msgid "If you have `Homebrew <https://brew.sh/>`_ installed, you can easily install SCons using the following command::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:31
msgid "Installing Homebrew will also fetch the Command Line Tools for Xcode automatically if you don't have them already."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:34
msgid "Similarly, if you have `MacPorts <https://www.macports.org/>`_ installed, you can easily install SCons using the following command::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:40
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:43
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:47
msgid "Compiling"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:49
msgid "Open a Terminal, go to the root dir of the engine source code and type:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:55
msgid "for a debug build, or:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:61
msgid "for a release build (check ``platform/ios/detect.py`` for the compiler flags used for each configuration)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:64
msgid "Alternatively, you can run"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:71
msgid "for a Simulator libraries."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:73
msgid "To create an Xcode project like in the official builds, you need to use the template located in ``misc/dist/ios_xcode``. The release and debug libraries should be placed in ``libgodot.ios.debug.xcframework`` and ``libgodot.ios.release.xcframework`` respectively."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:87
msgid "The MoltenVK static ``.xcframework`` folder must also be placed in the ``ios_xcode`` folder once it has been created."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:91
msgid "Run"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_ios.rst:93
msgid "To run on a device or simulator, follow these instructions: :ref:`doc_exporting_for_ios`."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,381 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:4
msgid "Compiling for Linux, \\*BSD"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:10
msgid "This page describes how to compile Linux editor and export template binaries from source. If you're looking to export your project to Linux instead, read :ref:`doc_exporting_for_linux`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:16
msgid "For compiling under Linux or other Unix variants, the following is required:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:19
msgid "GCC 7+ or Clang 6+."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:21
msgid "`Python 3.6+ <https://www.python.org/downloads/>`_."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:23
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`_ build system."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:27
msgid "If your distribution uses Python 2 by default, or you are using a version of SCons prior to 3.1.2, you will need to change the version of Python that SCons uses by changing the shebang (the first line) of the SCons script file to ``#! /usr/bin/python3``. Use the command ``which scons`` to find the location of the SCons script file."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:32
msgid "pkg-config (used to detect the development libraries listed below)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:33
msgid "Development libraries:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:35
msgid "X11, Xcursor, Xinerama, Xi and XRandR."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:36
msgid "MesaGL."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:37
msgid "ALSA."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:38
msgid "PulseAudio."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:40
msgid "*Optional* - libudev (build with ``udev=yes``)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:44
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:46
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:51
msgid "Distro-specific one-liners"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:55
msgid "Alpine Linux"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:75
msgid "Arch Linux"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:93
msgid "Debian/Ubuntu"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:112
msgid "Fedora"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:133
msgid "FreeBSD"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:148
msgid "Gentoo"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:163
msgid "Mageia"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:181
msgid "OpenBSD"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:190
msgid "openSUSE"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:209
msgid "NetBSD"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:219
msgid "For audio support, you can optionally install ``pulseaudio``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:221
msgid "Solus"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:238
msgid "Compiling"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:240
msgid "Start a terminal, go to the root dir of the engine source code and type:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:248
msgid "Prior to Godot 4.0, the Linux/\\*BSD target was called ``x11`` instead of ``linuxbsd``. If you are looking to compile Godot 3.x, make sure to use the `3.x branch of this documentation <https://docs.godotengine.org/en/3.6/development/compiling/compiling_for_x11.html>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:252
msgid "If all goes well, the resulting binary executable will be placed in the \"bin\" subdirectory. This executable file contains the whole engine and runs without any dependencies. Executing it will bring up the Project Manager."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:259
msgid "If you wish to compile using Clang rather than GCC, use this command:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:265
msgid "Using Clang appears to be a requirement for OpenBSD, otherwise fonts would not build."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:268
msgid "If you are compiling Godot for production use, then you can make the final executable smaller and faster by adding the SCons options ``target=template_release production=yes``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:272
msgid "If you are compiling Godot with GCC, you can make the binary even smaller and faster by adding the SCons option ``lto=full``. As link-time optimization is a memory-intensive process, this will require about 7 GB of available RAM while compiling."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:277
msgid "If you want to use separate editor settings for your own Godot builds and official releases, you can enable :ref:`doc_data_paths_self_contained_mode` by creating a file called ``._sc_`` or ``_sc_`` in the ``bin/`` folder."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:283
msgid "Running a headless/server build"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:285
msgid "To run in *headless* mode which provides editor functionality to export projects in an automated manner, use the normal build::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:290
msgid "And then use the ``--headless`` command line argument::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:294
msgid "To compile a debug *server* build which can be used with :ref:`remote debugging tools <doc_command_line_tutorial>`, use::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:299
msgid "To compile a *server* build which is optimized to run dedicated game servers, use::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:305
msgid "Building export templates"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:307
msgid "Linux binaries usually won't run on distributions that are older than the distribution they were built on. If you wish to distribute binaries that work on most distributions, you should build them on an old distribution such as Ubuntu 16.04. You can use a virtual machine or a container to set up a suitable build environment."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:315
msgid "To build Linux or \\*BSD export templates, run the build system with the following parameters:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:318
msgid "(32 bits)"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:325
msgid "(64 bits)"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:332
msgid "Note that cross-compiling for the opposite bits (64/32) as your host platform is not always straight-forward and might need a chroot environment."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:335
msgid "To create standard export templates, the resulting files in the ``bin/`` folder must be copied to:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:342
msgid "and named like this (even for \\*BSD which is seen as \"Linux/X11\" by Godot):"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:351
msgid "However, if you are writing your custom modules or custom C++ code, you might instead want to configure your binaries as custom export templates here:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:357
msgid "You don't even need to copy them, you can just reference the resulting files in the ``bin/`` directory of your Godot source folder, so the next time you build, you automatically have the custom templates referenced."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:362
msgid "Using Clang and LLD for faster development"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:364
msgid "You can also use Clang and LLD to build Godot. This has two upsides compared to the default GCC + GNU ld setup:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:367
msgid "LLD links Godot significantly faster compared to GNU ld or gold. This leads to faster iteration times."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:369
msgid "Clang tends to give more useful error messages compared to GCC."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:371
msgid "To do so, install Clang and the ``lld`` package from your distribution's package manager then use the following SCons command::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:376
msgid "After the build is completed, a new binary with a ``.llvm`` suffix will be created in the ``bin/`` folder."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:379
msgid "It's still recommended to use GCC for production builds as they can be compiled using link-time optimization, making the resulting binaries smaller and faster."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:382
msgid "If this error occurs::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:386
msgid "There are two solutions:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:388
msgid "In your SCons command, add the parameter ``use_static_cpp=no``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:389
msgid "Follow `these instructions <https://github.com/ivmai/libatomic_ops#installation-and-usage>`__ to configure, build, and install ``libatomic_ops``. Then, copy ``/usr/lib/libatomic_ops.a`` to ``/usr/lib/libatomic.a``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:393
msgid "Using mold for faster development"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:395
msgid "For even faster linking compared to LLD, you can use `mold <https://github.com/rui314/mold>`__. mold can be used with either GCC or Clang."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:398
msgid "As of January 2023, mold is not readily available in Linux distribution repositories, so you will have to install its binaries manually."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:401
msgid "Download mold binaries from its `releases page <https://github.com/rui314/mold/releases/latest>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:402
msgid "Extract the ``.tar.gz`` file, then move the extraced folder to a location such as ``.local/share/mold``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:403
msgid "Add ``$HOME/.local/share/mold/bin`` to your user's ``PATH`` environment variable. For example, you can add the following line at the end of your ``$HOME/.bash_profile`` file:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:410
msgid "Open a new terminal (or run ``source \"$HOME/.bash_profile\"``), then use the following SCons command when compiling Godot::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:416
msgid "Using system libraries for faster development"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:418
msgid "`Godot bundles the source code of various third-party libraries. <https://github.com/godotengine/godot/tree/master/thirdparty>`__ You can choose to use system versions of third-party libraries instead. This makes the Godot binary faster to link, as third-party libraries are dynamically linked. Therefore, they don't need to be statically linked every time you build the engine (even on small incremental changes)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:424
msgid "However, not all Linux distributions have packages for third-party libraries available (or they may not be up-to-date)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:427
msgid "Moving to system libraries can reduce linking times by several seconds on slow CPUs, but it requires manual testing depending on your Linux distribution. Also, you may not be able to use system libraries for everything due to bugs in the system library packages (or in the build system, as this feature is less tested)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:433
msgid "To compile Godot with system libraries, install these dependencies *on top* of the ones listed in the :ref:`doc_compiling_for_linuxbsd_oneliners`:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:437
msgid "**Fedora**"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:444
msgid "After installing all required packages, use the following command to build Godot:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:453
msgid "You can view a list of all built-in libraries that have system alternatives by running ``scons -h``, then looking for options starting with ``builtin_``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:458
msgid "When using system libraries, the resulting library is **not** portable across Linux distributions anymore. Do not use this approach for creating binaries you intend to distribute to others, unless you're creating a package for a Linux distribution."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:464
msgid "Using Pyston for faster development"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:466
msgid "You can use `Pyston <https://www.pyston.org/>`__ to run SCons. Pyston is a JIT-enabled implementation of the Python language (which SCons is written in). It is currently only compatible with Linux. Pyston can speed up incremental builds significantly, often by a factor between 1.5× and 2×. Pyston can be combined with Clang and LLD to get even faster builds."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:472
msgid "Download the `latest portable Pyston release <https://github.com/pyston/pyston/releases/latest>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:473
msgid "Extract the portable ``.tar.gz`` to a set location, such as ``$HOME/.local/opt/pyston/`` (create folders as needed)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:474
msgid "Use ``cd`` to reach the extracted Pyston folder from a terminal, then run ``./pyston -m pip install scons`` to install SCons within Pyston."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:476
msgid "To make SCons via Pyston easier to run, create a symbolic link of its wrapper script to a location in your ``PATH`` environment variable::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:481
msgid "Instead of running ``scons <build arguments>``, run ``pyston-scons <build arguments>`` to compile Godot."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:484
msgid "If you can't run ``pyston-scons`` after creating the symbolic link, make sure ``$HOME/.local/bin/`` is part of your user's ``PATH`` environment variable."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_linuxbsd.rst:489
msgid "Alternatively, you can run ``python -m pip install pyston_lite_autoload`` then run SCons as usual. This will automatically load a subset of Pyston's optimizations in any Python program you run. However, this won't bring as much of a performance improvement compared to installing \"full\" Pyston."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,206 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:4
msgid "Compiling for macOS"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:10
msgid "This page describes how to compile macOS editor and export template binaries from source. If you're looking to export your project to macOS instead, read :ref:`doc_exporting_for_macos`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:16
msgid "For compiling under macOS, the following is required:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:18
msgid "`Python 3.6+ <https://www.python.org/downloads/macos/>`_."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:19
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`_ build system."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:20
msgid "`Xcode <https://apps.apple.com/us/app/xcode/id497799835>`_ (or the more lightweight Command Line Tools for Xcode)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:22
msgid "`Vulkan SDK <https://sdk.lunarg.com/sdk/download/latest/mac/vulkan-sdk.dmg>`_ for MoltenVK (macOS doesn't support Vulkan out of the box)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:25
msgid "If you have `Homebrew <https://brew.sh/>`_ installed, you can easily install SCons using the following command::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:30
msgid "Installing Homebrew will also fetch the Command Line Tools for Xcode automatically if you don't have them already."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:33
msgid "Similarly, if you have `MacPorts <https://www.macports.org/>`_ installed, you can easily install SCons using the following command::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:39
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:42
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:46
msgid "Compiling"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:48
msgid "Start a terminal, go to the root directory of the engine source code."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:50
msgid "To compile for Intel (x86-64) powered Macs, use::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:54
msgid "To compile for Apple Silicon (ARM64) powered Macs, use::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:58
msgid "To support both architectures in a single \"Universal 2\" binary, run the above two commands and then use ``lipo`` to bundle them together::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:62
msgid "If all goes well, the resulting binary executable will be placed in the ``bin/`` subdirectory. This executable file contains the whole engine and runs without any dependencies. Executing it will bring up the Project Manager."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:67
msgid "If you want to use separate editor settings for your own Godot builds and official releases, you can enable :ref:`doc_data_paths_self_contained_mode` by creating a file called ``._sc_`` or ``_sc_`` in the ``bin/`` folder."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:72
msgid "To create an ``.app`` bundle like in the official builds, you need to use the template located in ``misc/dist/macos_tools.app``. Typically, for an optimized editor binary built with ``target=release_debug``::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:84
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:157
msgid "If you are building the ``master`` branch, you also need to include support for the MoltenVK Vulkan portability library. By default, it will be linked statically from your installation of the Vulkan SDK for macOS. You can also choose to link it dynamically by passing ``use_volk=yes`` and including the dynamic library in your ``.app`` bundle::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:94
msgid "Running a headless/server build"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:96
msgid "To run in *headless* mode which provides editor functionality to export projects in an automated manner, use the normal build::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:101
msgid "And then use the ``--headless`` command line argument::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:105
msgid "To compile a debug *server* build which can be used with :ref:`remote debugging tools <doc_command_line_tutorial>`, use::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:110
msgid "To compile a release *server* build which is optimized to run dedicated game servers, use::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:116
msgid "Building export templates"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:118
msgid "To build macOS export templates, you have to compile using the targets without the editor: ``target=template_release`` (release template) and ``target=template_debug``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:122
msgid "Official templates are universal binaries which support both Intel x86_64 and ARM64 architectures. You can also create export templates that support only one of those two architectures by leaving out the ``lipo`` step below."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:126
msgid "For Intel x86_64::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:131
msgid "For ARM64 (Apple M1)::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:136
msgid "To support both architectures in a single \"Universal 2\" binary, run the above two commands blocks and then use ``lipo`` to bundle them together::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:142
msgid "To create an ``.app`` bundle like in the official builds, you need to use the template located in ``misc/dist/macos_template.app``. The release and debug builds should be placed in ``macos_template.app/Contents/MacOS`` with the names ``godot_macos_release.64`` and ``godot_macos_debug.64`` respectively. You can do so with the following commands (assuming a universal build, otherwise replace the ``.universal`` extension with the one of your arch-specific binaries)::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:166
msgid "You can then zip the ``macos_template.app`` folder to reproduce the ``macos.zip`` template from the official Godot distribution::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:172
msgid "Using Pyston for faster development"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:174
msgid "You can use `Pyston <https://www.pyston.org/>`__ to run SCons. Pyston is a JIT-enabled implementation of the Python language (which SCons is written in). Its \"full\" version is currently only compatible with Linux, but Pyston-lite is also compatible with macOS (both x86 and ARM). Pyston can speed up incremental builds significantly, often by a factor between 1.5× and 2×. Pyston can be combined with alternative linkers such as LLD or Mold to get even faster builds."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:181
msgid "To install Pyston-lite, run ``python -m pip install pyston_lite_autoload`` then run SCons as usual. This will automatically load a subset of Pyston's optimizations in any Python program you run. However, this won't bring as much of a performance improvement compared to installing \"full\" Pyston (which currently can't be done on macOS)."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:188
msgid "Cross-compiling for macOS from Linux"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:190
msgid "It is possible to compile for macOS in a Linux environment (and maybe also in Windows using the Windows Subsystem for Linux). For that, you'll need to install `OSXCross <https://github.com/tpoechtrager/osxcross>`__ to be able to use macOS as a target. First, follow the instructions to install it:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:195
msgid "Clone the `OSXCross repository <https://github.com/tpoechtrager/osxcross>`__ somewhere on your machine (or download a ZIP file and extract it somewhere), e.g.::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:201
msgid "Follow the instructions to package the SDK: https://github.com/tpoechtrager/osxcross#packaging-the-sdk"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:203
msgid "Follow the instructions to install OSXCross: https://github.com/tpoechtrager/osxcross#installation"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:206
msgid "After that, you will need to define the ``OSXCROSS_ROOT`` as the path to the OSXCross installation (the same place where you cloned the repository/extracted the zip), e.g.::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:212
msgid "Now you can compile with SCons like you normally would::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_macos.rst:216
msgid "If you have an OSXCross SDK version different from the one expected by the SCons buildsystem, you can specify a custom one with the ``osxcross_sdk`` argument::"
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/compiling_for_uwp.rst:4
msgid "Compiling for Universal Windows Platform"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_uwp.rst:8
msgid "Compiling UWP export templates is not implemented in Godot 4. Godot 3 has limited UWP support, but there are many `known issues <https://github.com/godotengine/godot/issues?q=is%3Aopen+is%3Aissue+label%3Aplatform%3Auwp>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_uwp.rst:12
msgid "We recommend you use the :ref:`Win32 export <doc_exporting_for_windows>` instead."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,137 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:4
msgid "Compiling for the Web"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:8
msgid "This page describes how to compile HTML5 editor and export template binaries from source. If you're looking to export your project to HTML5 instead, read :ref:`doc_exporting_for_web`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:16
msgid "To compile export templates for the Web, the following is required:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:18
msgid "`Emscripten 1.39.9+ <https://emscripten.org>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:19
msgid "`Python 3.6+ <https://www.python.org/>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:20
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`__ build system."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:22
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:25
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:29
msgid "Building export templates"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:31
msgid "Before starting, confirm that ``emcc`` is available in your PATH. This is usually configured by the Emscripten SDK, e.g. when invoking ``emsdk activate`` and ``source ./emsdk_env.sh``/``emsdk_env.bat``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:35
msgid "Open a terminal and navigate to the root directory of the engine source code. Then instruct SCons to build the Web platform. Specify ``target`` as either ``template_release`` for a release build or ``template_debug`` for a debug build::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:42
msgid "By default, the :ref:`JavaScript singleton <doc_javascript_eval>` will be built into the engine. Official export templates also have the JavaScript singleton enabled. Since ``eval()`` calls can be a security concern, the ``javascript_eval`` option can be used to build without the singleton::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:50
msgid "The engine will now be compiled to WebAssembly by Emscripten. Once finished, the resulting file will be placed in the ``bin`` subdirectory. Its name is ``godot.web.opt.wasm32.zip`` for release or ``godot.web.opt.debug.wasm32.zip`` for debug."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:55
msgid "Finally, rename the zip archive to ``web_release.zip`` for the release template::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:60
msgid "And ``web_debug.zip`` for the debug template::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:65
msgid "GDExtension"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:67
msgid "The default export templates do not include GDExtension support for performance and compatibility reasons. See the :ref:`export page <doc_javascript_export_options>` for more info."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:71
msgid "You can build the export templates using the option ``dlink_enabled=yes`` to enable GDExtension support::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:77
msgid "Once finished, the resulting file will be placed in the ``bin`` subdirectory. Its name will have ``_dlink`` added."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:80
msgid "Finally, rename the zip archives to ``web_dlink_release.zip`` and ``web_dlink_release.zip`` for the release template::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:87
msgid "Building the editor"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:89
msgid "It is also possible to build a version of the Godot editor that can run in the browser. The editor version is not recommended over the native build. You can build the editor with::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:95
msgid "Once finished, the resulting file will be placed in the ``bin`` subdirectory. Its name will be ``godot.web.opt.tools.wasm32.zip``. You can upload the zip content to your web server and visit it with your browser to use the editor."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:99
msgid "Refer to the :ref:`export page <doc_javascript_export_options>` for the web server requirements."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:104
msgid "The Godot repository includes a `Python script to host a local web server <https://raw.githubusercontent.com/godotengine/godot/master/platform/web/serve.py>`__. This can be used to test the web editor locally."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:108
msgid "After compiling the editor, extract the ZIP archive that was created in the ``bin/`` folder, then run the following command in the Godot repository root:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:117
msgid "This will serve the contents of the ``bin/`` folder and open the default web browser automatically. In the page that opens, access ``godot.tools.html`` and you should be able to test the web editor this way."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_for_web.rst:121
msgid "Note that for production use cases, this Python-based web server should not be used. Instead, you should use an established web server such as Apache or nginx."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,271 +16,267 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/compiling_for_windows.rst:4
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:4
msgid "Compiling for Windows"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:10
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:10
msgid "This page describes how to compile Windows editor and export template binaries from source. If you're looking to export your project to Windows instead, read :ref:`doc_exporting_for_windows`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:14
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:16
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:16
msgid "For compiling under Windows, the following is required:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:18
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:18
msgid "`Visual Studio Community <https://www.visualstudio.com/vs/community/>`_, version 2017 or later. VS 2019 is recommended. **Make sure to read \"Installing Visual Studio caveats\" below or you will have to run/download the installer again.**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:22
msgid "`MinGW-w64 <http://mingw-w64.org/>`__ with GCC can be used as an alternative to Visual Studio. Be sure to install/configure it to use the ``posix`` thread model."
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:22
msgid "`MinGW-w64 <https://mingw-w64.org/>`_ with GCC can be used as an alternative to Visual Studio. Be sure to install/configure it to use the ``posix`` thread model. **Important:** When using MinGW to compile the ``master`` branch, you need GCC 9 or later."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:24
msgid "`Python 3.5+ <https://www.python.org/downloads/windows/>`_. **Make sure to enable the option to add Python to the ``PATH`` in the installer.**"
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:25
msgid "`Python 3.6+ <https://www.python.org/downloads/windows/>`_. **Make sure to enable the option to add Python to the ``PATH`` in the installer.**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:26
msgid "`SCons <https://www.scons.org/>`_ build system. Using the latest release is recommended, especially for proper support of recent Visual Studio releases."
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:27
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`_ build system. Using the latest release is recommended, especially for proper support of recent Visual Studio releases."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:29
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:31
msgid "If you have `Scoop <https://scoop.sh/>`_ installed, you can easily install MinGW and other dependencies using the following command::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:34
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:36
msgid "If you have `MSYS2 <https://www.msys2.org/>`_ installed, you can easily install MinGW and other dependencies using the following command::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:40
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:42
msgid "For each MSYS2 MinGW subsystem, you should then run `pip3 install scons` in its shell."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:43
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:45
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:46
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:48
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:50
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:52
msgid "Setting up SCons"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:52
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:54
msgid "To install SCons, open the command prompt and run the following command::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:56
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:58
msgid "If you are prompted with the message ``Defaulting to user installation because normal site-packages is not writeable``, you may have to run that command again using elevated permissions. Open a new command prompt as an Administrator then run the command again to ensure that SCons is available from the ``PATH``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:62
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:64
msgid "To check whether you have installed Python and SCons correctly, you can type ``python --version`` and ``scons --version`` into a command prompt (``cmd.exe``)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:66
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:68
msgid "If the commands above don't work, make sure to add Python to your ``PATH`` environment variable after installing it, then check again. You can do so by running the Python installer again and enabling the option to add Python to the ``PATH``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:71
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:73
msgid "If SCons cannot detect your Visual Studio installation, it might be that your SCons version is too old. Update it to the latest version with ``python -m pip install --upgrade scons``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:78
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:80
msgid "Installing Visual Studio caveats"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:80
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:82
msgid "If installing Visual Studio 2017 or 2019, make sure to enable **C++** in the list of workflows to install."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:83
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:85
msgid "If installing Visual Studio 2015, make sure to run a **Custom** installation instead of **Typical** and select **C++** as a language there."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:86
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:88
msgid "If you've already made the mistake of installing Visual Studio without C++ support, run the installer again; it should present you a **Modify** button. Running the installer from *Add/Remove Programs* will only give you a **Repair** option, which won't let you install C++ tools."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:92
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:94
msgid "Downloading Godot's source"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:94
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:96
msgid "Refer to :ref:`doc_getting_source` for detailed instructions."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:96
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:98
msgid "The tutorial will assume from now on that you placed the source code in ``C:\\godot``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:101
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:103
msgid "To prevent slowdowns caused by continuous virus scanning during compilation, add the Godot source folder to the list of exceptions in your antivirus software."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:105
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:107
msgid "For Windows Defender, hit the :kbd:`Windows` key, type \"Windows Defender Settings\" then hit :kbd:`Enter`. Under **Virus & threat protection**, go to **Virus & threat protection setting** and scroll down to **Exclusions**. Click **Add or remove exclusions** then add the Godot source folder."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:112
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:114
msgid "Compiling"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:115
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:117
msgid "Selecting a compiler"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:117
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:119
msgid "SCons will automatically find and use an existing Visual Studio installation. If you do not have Visual Studio installed, it will attempt to use MinGW instead. If you already have Visual Studio installed and want to use MinGW, pass ``use_mingw=yes`` to the SCons command line. Note that MSVC builds cannot be performed from the MSYS2 or MinGW shells. Use either ``cmd.exe`` or PowerShell instead."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:124
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:126
msgid "During development, using the Visual Studio compiler is usually a better idea, as it links the Godot binary much faster than MinGW. However, MinGW can produce more optimized binaries using link-time optimization (see below), making it a better choice for production use."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:130
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:132
msgid "Running SCons"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:132
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:134
msgid "After opening a command prompt, change to the root directory of the engine source code (using ``cd``) and type::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:137
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:139
msgid "When compiling with multiple CPU threads, SCons may warn about pywin32 being missing. You can safely ignore this warning."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:140
msgid "If all goes well, the resulting binary executable will be placed in ``C:\\godot\\bin\\`` with the name ``godot.windows.tools.32.exe`` or ``godot.windows.tools.64.exe``. By default, SCons will build a binary matching your CPU architecture, but this can be overridden using ``bits=64`` or ``bits=32``."
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:142
msgid "If all goes well, the resulting binary executable will be placed in ``C:\\godot\\bin\\`` with the name ``godot.windows.tools.32.exe`` or ``godot.windows.tools.64.exe``. By default, SCons will build a binary matching your CPU architecture, but this can be overridden using ``arch=x86_64`` or ``arch=x86_32``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:146
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:148
msgid "This executable file contains the whole engine and runs without any dependencies. Running it will bring up the Project Manager."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:149
msgid "If you are compiling Godot for production use, then you can make the final executable smaller and faster by adding the SCons option ``target=release_debug``."
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:151
msgid "If you are compiling Godot for production use, then you can make the final executable smaller and faster by adding the SCons option ``target=template_release``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:153
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:155
msgid "If you are compiling Godot with MinGW, you can make the binary even smaller and faster by adding the SCons option ``lto=full``. As link-time optimization is a memory-intensive process, this will require about 7 GB of available RAM while compiling."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:158
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:160
msgid "If you want to use separate editor settings for your own Godot builds and official releases, you can enable :ref:`doc_data_paths_self_contained_mode` by creating a file called ``._sc_`` or ``_sc_`` in the ``bin/`` folder."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:164
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:166
msgid "Development in Visual Studio"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:166
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:168
msgid "Using an IDE is not required to compile Godot, as SCons takes care of everything. But if you intend to do engine development or debugging of the engine's C++ code, you may be interested in configuring a code editor or an IDE."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:170
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:172
msgid "Folder-based editors don't require any particular setup to start working with Godot's codebase. To edit projects with Visual Studio they need to be set up as a solution."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:173
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:175
msgid "You can create a Visual Studio solution via SCons by running SCons with the ``vsproj=yes`` parameter, like this::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:178
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:180
msgid "You will be able to open Godot's source in a Visual Studio solution now, and able to build Godot using Visual Studio's **Build** button."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:181
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:183
msgid "See :ref:`doc_configuring_an_ide_vs` for further details."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:184
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:186
msgid "Cross-compiling for Windows from other operating systems"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:186
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:188
msgid "If you are a Linux or macOS user, you need to install `MinGW-w64 <https://mingw-w64.org/doku.php>`__, which typically comes in 32-bit and 64-bit variants. The package names may differ based on your distribution, here are some known ones:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:192
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:194
msgid "**Arch Linux**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:192
msgid "Install `mingw-w64-gcc from the AUR`_."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:194
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:198
msgid "**Debian** / **Ubuntu**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:198
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:202
msgid "**Fedora**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:203
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:207
msgid "**macOS**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:207
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:211
msgid "**Mageia**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:215
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:217
msgid "Before attempting the compilation, SCons will check for the following binaries in your ``PATH`` environment variable::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:221
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:223
msgid "If the binaries are not located in the ``PATH`` (e.g. ``/usr/bin``), you can define the following environment variables to give a hint to the build system::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:228
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:230
msgid "To make sure you are doing things correctly, executing the following in the shell should result in a working compiler (the version output may differ based on your system)::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:236
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:238
msgid "Troubleshooting"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:238
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:240
msgid "Cross-compiling from some Ubuntu versions may lead to `this bug <https://github.com/godotengine/godot/issues/9258>`_, due to a default configuration lacking support for POSIX threading."
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:242
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:244
msgid "You can change that configuration following those instructions, for 64-bit::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:250
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:252
msgid "And for 32-bit::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:258
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:260
msgid "Creating Windows export templates"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:260
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:262
msgid "Windows export templates are created by compiling Godot without the editor, with the following flags::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:268
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:270
msgid "If you plan on replacing the standard export templates, copy these to the following location, replacing ``<version>`` with the version identifier (such as ``3.1.1.stable`` or ``3.2.dev``)::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:274
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:276
msgid "With the following names::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:281
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:283
msgid "However, if you are using custom modules or custom engine code, you may instead want to configure your binaries as custom export templates here:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_windows.rst:287
#: ../../docs/contributing/development/compiling/compiling_for_windows.rst:289
msgid "You don't need to copy them in this case, just reference the resulting files in the ``bin\\`` directory of your Godot source folder, so the next time you build, you will automatically have the custom templates referenced."
msgstr ""

View File

@@ -0,0 +1,193 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:4
msgid "Compiling with .NET"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:9
msgid "Requirements"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:11
msgid "`.NET SDK 6.0+ <https://dotnet.microsoft.com/download>`_"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:13
msgid "You can use ``dotnet --info`` to check which .NET SDK versions are installed."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:16
msgid "Enable the .NET module"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:18
msgid "C# support for Godot has historically used the `Mono <https://www.mono-project.com/>`_ runtime instead of the `.NET Runtime <https://github.com/dotnet/runtime>`_ and internally many things are still named ``mono`` instead of ``dotnet`` or otherwise referred to as ``mono``."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:24
msgid "By default, the .NET module is disabled when building. To enable it, add the option ``module_mono_enabled=yes`` to the SCons command line, while otherwise following the instructions for building the desired Godot binaries."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:29
msgid "Generate the glue"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:31
msgid "Parts of the sources of the managed libraries are generated from the ClassDB. These source files must be generated before building the managed libraries. They can be generated by any .NET-enabled Godot editor binary by running it with the parameters ``--headless --generate-mono-glue`` followed by the path to an output directory. This path must be ``modules/mono/glue`` in the Godot directory::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:40
msgid "This command will tell Godot to generate the C# bindings for the Godot API at ``modules/mono/glue/GodotSharp/GodotSharp/Generated``, and the C# bindings for the editor tools at ``modules/mono/glue/GodotSharp/GodotSharpEditor/Generated``. Once these files are generated, you can build Godot's managed libraries for all the desired targets without having to repeat this process."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:46
msgid "``<godot_binary>`` refers to the editor binary you compiled with the .NET module enabled. Its exact name will differ based on your system and configuration, but should be of the form ``bin/godot.<platform>.editor.<arch>.mono``, e.g. ``bin/godot.linuxbsd.editor.x86_64.mono`` or ``bin/godot.windows.editor.x86_32.mono.exe``. Be especially aware of the **.mono** suffix! If you've previously compiled Godot without .NET support, you might have similarly named binaries without this suffix. These binaries can't be used to generate the .NET glue."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:55
msgid "The glue sources must be regenerated every time the ClassDB-registered API changes. That is, for example, when a new method is registered to the scripting API or one of the parameters of such a method changes. Godot will print an error at startup if there is an API mismatch between ClassDB and the glue sources."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:62
msgid "Building the managed libraries"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:64
msgid "Once you have generated the .NET glue, you can build the managed libraries with the ``build_assemblies.py`` script::"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:69
msgid "If everything went well, the ``GodotSharp`` directory, containing the managed libraries, should have been created in the ``bin`` directory."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:72
msgid "By default, all development builds share a version number, which can cause some issues with caching of the NuGet packages. To solve this issue either use ``GODOT_VERSION_STATUS`` to give every build a unique version or delete ``GodotNuGetFallbackFolder`` after every build to clear the package cache."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:78
msgid "Unlike \"classical\" Godot builds, when building with the .NET module enabled (and depending on the target platform), a data directory may be created both for the editor and for exported projects. This directory is important for proper functioning and must be distributed together with Godot. More details about this directory in :ref:`Data directory<compiling_with_dotnet_data_directory>`."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:86
msgid "Build Platform"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:88
msgid "Provide the ``--godot-platform=<platform>`` argument to control for which platform specific the libraries are built. Omit this argument to build for the current system."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:92
msgid "This currently only controls the inclusion of the support for Visual Studio as an external editor, the libraries are otherwise identical."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:96
msgid "NuGet packages"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:98
msgid "The API assemblies, source generators, and custom MSBuild project SDK are distributed as NuGet packages. This is all transparent to the user, but it can make things complicated during development."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:102
msgid "In order to use Godot with a development version of those packages, a local NuGet source must be created where MSBuild can find them. This can be done with the .NET CLI:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:110
msgid "The Godot NuGet packages must be added to that local source. Additionally, we must make sure there are no other versions of the package in the NuGet cache, as MSBuild may pick one of those instead."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:114
msgid "In order to simplify this process, the ``build_assemblies.py`` script provides the following ``--push-nupkgs-local`` option:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:121
msgid "This option ensures the packages will be added to the specified local NuGet source and that conflicting versions of the package are removed from the NuGet cache. It's recommended to always use this option when building the C# solutions during development to avoid mistakes."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:127
msgid "Double Precision Support (REAL_T_IS_DOUBLE)"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:129
msgid "When building Godot with double precision support, i.e. the ``precision=double`` argument for scons, the managed libraries must be adjusted to match by passing the ``--precision=double`` argument:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:138
msgid "Examples"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:141
msgid "Example (Windows)"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:158
msgid "Example (Linux, \\*BSD)"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:176
msgid "Data directory"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:178
msgid "The data directory is a dependency for Godot binaries built with the .NET module enabled. It contains important files for the correct functioning of Godot. It must be distributed together with the Godot executable."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:183
msgid "Editor"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:185
msgid "The name of the data directory for the Godot editor will always be ``GodotSharp``. This directory contains an ``Api`` subdirectory with the Godot API assemblies and a ``Tools`` subdirectory with the tools required by the editor, like the ``GodotTools`` assemblies and its dependencies."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:190
msgid "On macOS, if the Godot editor is distributed as a bundle, the ``GodotSharp`` directory may be placed in the ``<bundle_name>.app/Contents/Resources/`` directory inside the bundle."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:195
msgid "Export templates"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:197
msgid "The data directory for exported projects is generated by the editor during the export. It is named ``data_<APPNAME>_<ARCH>``, where ``<APPNAME>`` is the application name as specified in the project setting ``application/config/name`` and ``<ARCH>`` is the current architecture of the export."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:202
msgid "In the case of multi-architecture exports multiple such data directories will be generated."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:206
msgid "Command-line options"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:208
msgid "The following is the list of command-line options available when building with the .NET module:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:211
msgid "**module_mono_enabled**\\ =yes | **no**"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_dotnet.rst:213
msgid "Build Godot with the .NET module enabled."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,93 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:4
msgid "Compiling with PCK encryption key"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:8
msgid "The export dialog gives you the option to encrypt your PCK file with a 256-bit AES key when releasing your project. This will make sure your scenes, scripts and other resources are not stored in plain text and can not easily be ripped by some script kiddie."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:13
msgid "Of course, the key needs to be stored in the binary, but if it's compiled, optimized and without symbols, it would take some effort to find it."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:16
msgid "For this to work, you need to build the export templates from source, with that same key."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:21
msgid "This will **not** work if you use official, precompiled export templates. It is absolutely **required** to compile your own export templates to use PCK encryption."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:27
msgid "By default, Android exports store assets directly in the APK file and aren't affected by PCK encryption. To use PCK encryption on Android, enable **APK expansion** in the export options."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:32
msgid "Step by step"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:34
msgid "Generate a 256-bit AES key in hexadecimal format. You can use the aes-256-cbc variant from `this service <https://asecuritysite.com/encryption/keygen>`_."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:37
msgid "Alternatively, you can generate it yourself using `OpenSSL <https://www.openssl.org/>`__ command-line tools:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:44
msgid "The output in ``godot.gdkey`` should be similar to:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:51
msgid "You can generate the key without redirecting the output to a file, but that way you can minimize the risk of exposing the key."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:54
msgid "Set this key as environment variable in the console that you will use to compile Godot, like this:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:70
msgid "Compile Godot export templates and set them as custom export templates in the export preset options."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:73
msgid "Set the encryption key in the **Encryption** tab of the export preset:"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:77
msgid "Add filters for the files/folders to encrypt. **By default**, include filters are empty and **nothing will be encrypted**."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:80
msgid "Export the project. The project should run with the files encrypted now."
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:83
msgid "Troubleshooting"
msgstr ""
#: ../../docs/contributing/development/compiling/compiling_with_script_encryption_key.rst:85
msgid "If you get an error like below, it means the key wasn't properly included in your Godot build. Godot is encrypting PCK file during export, but can't read it at runtime."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,149 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:4
msgid "Cross-compiling for iOS on Linux"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:8
msgid "The procedure for this is somewhat complex and requires a lot of steps, but once you have the environment properly configured you can compile Godot for iOS anytime you want."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:13
msgid "Disclaimer"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:15
msgid "While it is possible to compile for iOS on a Linux environment, Apple is very restrictive about the tools to be used (especially hardware-wise), allowing pretty much only their products to be used for development. So this is **not official**. However, in 2010 Apple said they relaxed some of the `App Store review guidelines <https://developer.apple.com/app-store/review/guidelines/>`__ to allow any tool to be used, as long as the resulting binary does not download any code, which means it should be OK to use the procedure described here and cross-compiling the binary."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:25
msgid "Requirements"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:27
msgid "`XCode with the iOS SDK <https://developer.apple.com/xcode/download>`__ (a dmg image, for newer versions a **xip** file is going to be downloaded.)"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:29
msgid "`Clang >= 3.5 <https://clang.llvm.org>`__ for your development machine installed and in the ``PATH``. It has to be version >= 3.5 to target ``arm64`` architecture."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:32
msgid "`Fuse <https://github.com/libfuse/libfuse>`__ for mounting and unmounting the dmg image."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:34
msgid "`darling-dmg <https://github.com/darlinghq/darling-dmg>`__, which needs to be built from source. The procedure for that is explained below."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:38
msgid "For newer versions you should download `xar <https://mackyle.github.io/xar/>`__ and `pbzx <https://github.com/NiklasRosenstein/pbzx>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:40
msgid "For building darling-dmg, you'll need the development packages of the following libraries: fuse, icu, openssl, zlib, bzip2."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:42
msgid "For building xar and pbzx you may want to follow `this guide <https://gist.github.com/phracker/1944ce190e01963c550566b749bd2b54>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:45
msgid "`cctools-port <https://github.com/tpoechtrager/cctools-port>`__ for the needed build tools. The procedure for building is quite peculiar and is described below."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:49
msgid "This also has some extra dependencies: automake, autogen, libtool."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:52
msgid "Configuring the environment"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:55
msgid "darling-dmg"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:57
msgid "Clone the repository on your machine:"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:63
msgid "Build it:"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:75
msgid "Preparing the SDK"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:77
msgid "Mount the XCode image:"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:87
msgid "For newer versions you should extract the **xip** file:"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:97
msgid "Note that for the commands below, you may need to replace the version (`X.x`) with whatever iOS SDK version you're using."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:99
msgid "Extract the iOS SDK:"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:109
msgid "Pack the SDK:"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:117
msgid "Toolchain"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:119
msgid "Build cctools:"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:127
msgid "Copy the tools to a nicer place. Note that the SCons scripts for building will look under ``usr/bin`` inside the directory you provide for the toolchain binaries, so you must copy to such subdirectory, akin to the following commands:"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:137
msgid "Now you should have the iOS toolchain binaries in ``/home/user/iostoolchain/usr/bin``."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:141
msgid "Compiling Godot for iPhone"
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:143
msgid "Once you've done the above steps, you should keep two things in your environment: the built toolchain and the iPhoneOS SDK directory. Those can stay anywhere you want since you have to provide their paths to the SCons build command."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:148
msgid "For the iPhone platform to be detected, you need the ``OSXCROSS_IOS`` environment variable defined to anything."
msgstr ""
#: ../../docs/contributing/development/compiling/cross-compiling_for_ios_on_linux.rst:155
msgid "Now you can compile for iPhone using SCons like the standard Godot way, with some additional arguments to provide the correct paths:"
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,55 +16,55 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/getting_source.rst:4
#: ../../docs/contributing/development/compiling/getting_source.rst:4
msgid "Getting the source"
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:9
#: ../../docs/contributing/development/compiling/getting_source.rst:9
msgid "Downloading the Godot source code"
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:11
#: ../../docs/contributing/development/compiling/getting_source.rst:11
msgid "Before :ref:`getting into the SCons build system <doc_introduction_to_the_buildsystem>` and compiling Godot, you need to actually download the Godot source code."
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:14
#: ../../docs/contributing/development/compiling/getting_source.rst:14
msgid "The source code is available on `GitHub <https://github.com/godotengine/godot>`__ and while you can manually download it via the website, in general you want to do it via the ``git`` version control system."
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:18
#: ../../docs/contributing/development/compiling/getting_source.rst:18
msgid "If you are compiling in order to make contributions or pull requests, you should follow the instructions from the :ref:`Pull Request workflow <doc_pr_workflow>`."
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:21
#: ../../docs/contributing/development/compiling/getting_source.rst:21
msgid "If you don't know much about ``git`` yet, there are a great number of `tutorials <https://git-scm.com/book>`__ available on various websites."
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:24
#: ../../docs/contributing/development/compiling/getting_source.rst:24
msgid "In general, you need to install ``git`` and/or one of the various GUI clients."
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:26
#: ../../docs/contributing/development/compiling/getting_source.rst:26
msgid "Afterwards, to get the latest development version of the Godot source code (the unstable ``master`` branch), you can use ``git clone``."
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:29
#: ../../docs/contributing/development/compiling/getting_source.rst:29
msgid "If you are using the ``git`` command line client, this is done by entering the following in a terminal:"
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:38
#: ../../docs/contributing/development/compiling/getting_source.rst:38
msgid "For any stable release, visit the `release page <https://github.com/godotengine/godot/releases>`__ and click on the link for the release you want. You can then download and extract the source from the download link on the page."
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:42
#: ../../docs/contributing/development/compiling/getting_source.rst:42
msgid "With ``git``, you can also clone a stable release by specifying its branch or tag after the ``--branch`` (or just ``-b``) argument::"
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:51
#: ../../docs/contributing/development/compiling/getting_source.rst:51
msgid "There are also generally branches besides ``master`` for each major version."
msgstr ""
#: ../../docs/development/compiling/getting_source.rst:53
#: ../../docs/contributing/development/compiling/getting_source.rst:53
msgid "After downloading the Godot source code, you can :ref:`continue to compiling Godot <doc_introduction_to_the_buildsystem>`."
msgstr ""

View File

@@ -0,0 +1,25 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/index.rst:2
msgid "Building from source"
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,389 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:4
msgid "Introduction to the buildsystem"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:10
msgid "Setup"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:12
msgid ":ref:`Godot uses the SCons build system. <doc_faq_why_scons>` Please refer to the documentation for:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:15
msgid ":ref:`doc_compiling_for_android`"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:16
msgid ":ref:`doc_compiling_for_ios`"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:17
msgid ":ref:`doc_compiling_for_linuxbsd`"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:18
msgid ":ref:`doc_compiling_for_macos`"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:19
msgid ":ref:`doc_compiling_for_uwp`"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:20
msgid ":ref:`doc_compiling_for_web`"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:21
msgid ":ref:`doc_compiling_for_windows`"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:24
msgid "Platform selection"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:26
msgid "Godot's build system will begin by detecting the platforms it can build for. If not detected, the platform will simply not appear on the list of available platforms. The build requirements for each platform are described in the rest of this tutorial section."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:31
msgid "SCons is invoked by just calling ``scons``. If no platform is specified, SCons will detect the target platform automatically based on the host platform. It will then start building for the target platform right away."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:35
msgid "To list the available target platforms, use ``scons platform=list``::"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:49
msgid "To build for a platform (for example, ``linuxbsd``), run with the ``platform=`` (or ``p=`` to make it short) argument:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:56
msgid "This will start the build process, which will take a while. By default, Godot's SCons setup is configured to use all CPU threads but one (to keep the system responsive during compilation). If you want to adjust how many CPU threads SCons will use, use the ``-j <threads>`` parameter to specify how many threads will be used for the build."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:62
msgid "Example for using 4 threads:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:71
msgid "Resulting binary"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:73
msgid "The resulting binaries will be placed in the ``bin/`` subdirectory, generally with this naming convention::"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:78
msgid "For the previous build attempt, the result would look like this::"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:83
msgid "This means that the binary is for Linux *or* \\*BSD (*not* both), is not optimized, has the whole editor compiled in, and is meant for 64 bits."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:86
msgid "A Windows binary with the same configuration will look like this:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:93
msgid "Copy that binary to any location you like, as it contains the Project Manager, editor and all means to execute the game. However, it lacks the data to export it to the different platforms. For that the export templates are needed (which can be either downloaded from `godotengine.org <https://godotengine.org/>`__, or you can build them yourself)."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:99
msgid "Aside from that, there are a few standard options that can be set in all build targets, and which will be explained below."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:105
msgid "Target"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:107
msgid "Target controls if the editor is contained and debug flags are used. All builds are optimized. Each mode means:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:110
msgid "**editor**: Build with editor, optimized, with debugging code (defines: ``TOOLS_ENABLED``, ``DEBUG_ENABLED``, ``-O2``/``/O2``)"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:111
msgid "**template_debug**: Build with C++ debugging symbols (defines: ``DEBUG_ENABLED``, ``-O2``/``/O2``)"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:112
msgid "**template_release**: Build without symbols (defines: ``-O3``/``/O2``)"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:114
msgid "The editor is enabled by default in all PC targets (Linux, Windows, macOS), disabled for everything else. Disabling the editor produces a binary that can run projects but does not include the editor or the Project Manager."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:123
msgid "Development and production aliases"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:125
msgid "When creating builds for development (running debugging/:ref:`profiling <doc_using_cpp_profilers>` tools), you often have different goals compared to production builds (making binaries as fast and small as possible)."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:129
msgid "Godot provides two aliases for this purpose:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:131
msgid "``dev_mode=yes`` is an alias for ``verbose=yes warnings=extra werror=yes tests=yes``. This enables warnings-as-errors behavior (similar to Godot's continuous integration setup) and also builds :ref:`unit tests <doc_unit_testing>` so you can run them locally."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:135
msgid "``production=yes`` is an alias for ``use_static_cpp=yes debug_symbols=no lto=auto``. Statically linking libstdc++ allows for better binary portability when compiling for Linux. This alias also enables link-time optimization when compiling for Linux, Web and Windows with MinGW, but keeps LTO disabled when compiling for macOS, iOS or Windows with MSVC. This is because LTO on those platforms is very slow to link or has issues with the generated code."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:142
msgid "You can manually override options from those aliases by specifying them on the same command line with different values. For example, you can use ``scons production=yes debug_symbols=yes`` to create production-optimized binaries with debugging symbols included."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:148
msgid "Dev build"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:152
msgid "``dev_build`` should **not** be confused with ``dev_mode``, which is an alias for several development-related options (see above)."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:155
msgid "When doing engine development the ``dev_build`` option can be used together with ``target`` to enable dev-specific code. ``dev_build`` defines ``DEV_ENABLED``, disables optimization (``-O0``/``/0d``), enables generating debug symbols, and does not define ``NDEBUG`` (so ``assert()`` works in thirdparty libraries)."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:164
msgid "This flag appends the ``.dev`` suffix (for development) to the generated binary name."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:169
msgid "There are additional SCons options to enable *sanitizers*, which are tools you can enable at compile-time to better debug certain engine issues. See :ref:`doc_using_sanitizers` for more information."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:174
msgid "Debugging symbols"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:176
msgid "By default, ``debug_symbols=no`` is used, which means **no** debugging symbols are included in compiled binaries. Use ``debug_symbols=yes`` to include debug symbols within compiled binaries, which allows debuggers and profilers to work correctly. Debugging symbols are also required for Godot's crash stacktraces to display with references to source code files and lines."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:182
msgid "The downside is that debugging symbols are large files (significantly larger than the binaries themselves). As a result, official binaries currently do not include debugging symbols. This means you need to compile Godot yourself to have access to debugging symbols."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:187
msgid "When using ``debug_symbols=yes``, you can also use ``separate_debug_symbols=yes`` to put debug information in a separate file with a ``.debug`` suffix. This allows distributing both files independently. Note that on Windows, when compiling with MSVC, debugging information is *always* written to a separate ``.pdb`` file regardless of ``separate_debug_symbols``."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:195
msgid "Use the ``strip <path/to/binary>`` command to remove debugging symbols from a binary you've already compiled."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:199
msgid "Optimization level"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:201
msgid "Several compiler optimization levels can be chosen from:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:203
msgid "``optimize=speed_trace`` *(default when targeting non-Web platforms)*: Favors execution speed at the cost of larger binary size. Optimizations may sometimes negatively impact debugger usage (stack traces may be less accurate. If this occurs to you, use ``optimize=debug`` instead."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:207
msgid "``optimize=speed``: Favors even more execution speed, at the cost of even larger binary size compared to ``optimize=speed_trace``. Even less friendly to debugging compared to ``optimize=debug``, as this uses the most aggressive optimizations available."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:211
msgid "``optimize=size`` *(default when targeting the Web platform)*: Favors small binaries at the cost of slower execution speed."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:213
msgid "``optimize=debug``: Only enables optimizations that do not impact debugging in any way. This results in faster binaries than ``optimize=none``, but slower binaries than ``optimize=speed_trace``."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:216
msgid "``optimize=none``: Do not perform any optimization. This provides the fastest build times, but the slowest execution times."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:218
msgid "``optimize=custom`` *(advanced users only)*: Do not pass optimization arguments to the C/C++ compilers. You will have to pass arguments manually using the ``CFLAGS``, ``CCFLAGS`` and ``CXXFLAGS`` SCons options."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:223
msgid "Architecture"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:225
msgid "The ``arch`` option is meant to control the CPU or OS version intended to run the binaries. It is focused mostly on desktop platforms and ignored everywhere else."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:229
msgid "Supported values for the ``arch`` option are **auto**, **x86_32**, **x86_64**, **arm32**, **arm64**, **rv64**, **ppc32**, **ppc64** and **wasm32**."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:236
msgid "This flag appends the value of ``arch`` to resulting binaries when relevant. The default value ``arch=auto`` detects the architecture that matches the host platform."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:243
msgid "Custom modules"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:245
msgid "It's possible to compile modules residing outside of Godot's directory tree, along with the built-in modules."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:248
msgid "A ``custom_modules`` build option can be passed to the command line before compiling. The option represents a comma-separated list of directory paths containing a collection of independent C++ modules that can be seen as C++ packages, just like the built-in ``modules/`` directory."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:253
msgid "For instance, it's possible to provide both relative, absolute, and user directory paths containing such modules:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:262
msgid "If there's any custom module with the exact directory name as a built-in module, the engine will only compile the custom one. This logic can be used to override built-in module implementations."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:268
msgid ":ref:`doc_custom_modules_in_cpp`"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:271
msgid "Cleaning generated files"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:273
msgid "Sometimes, you may encounter an error due to generated files being present. You can remove them by using ``scons --clean <options>``, where ``<options>`` is the list of build options you've used to build Godot previously."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:277
msgid "Alternatively, you can use ``git clean -fixd`` which will clean build artifacts for all platforms and configurations. Beware, as this will remove all untracked and ignored files in the repository. Don't run this command if you have uncommitted work!"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:283
msgid "Other build options"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:285
msgid "There are several other build options that you can use to configure the way Godot should be built (compiler, debug options, etc.) as well as the features to include/disable."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:289
msgid "Check the output of ``scons --help`` for details about each option for the version you are willing to compile."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:295
msgid "Overriding the build options"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:298
msgid "Using a file"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:300
msgid "The default ``custom.py`` file can be created at the root of the Godot Engine source to initialize any SCons build options passed via the command line:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:312
msgid "You can also disable some of the builtin modules before compiling, saving some time it takes to build the engine. See :ref:`doc_optimizing_for_size` page for more details."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:317
msgid "You can use the online `Godot build options generator <https://godot-build-options-generator.github.io/>`__ to generate a ``custom.py`` file containing SCons options. You can then save this file and place it at the root of your Godot source directory."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:322
msgid "Another custom file can be specified explicitly with the ``profile`` command line option, both overriding the default build configuration:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:329
msgid "Build options set from the file can be overridden by the command line options."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:332
msgid "It's also possible to override the options conditionally:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:347
msgid "Using the SCONSFLAGS"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:349
msgid "``SCONSFLAGS`` is an environment variable which is used by the SCons to set the options automatically without having to supply them via the command line."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:352
msgid "For instance, you may want to force a number of CPU threads with the aforementioned ``-j`` option for all future builds:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:369
msgid "SCU (single compilation unit) build"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:371
msgid "Regular builds tend to be bottlenecked by including large numbers of headers in each compilation translation unit. Primarily to speed up development (rather than for production builds), Godot offers a \"single compilation unit\" build (aka \"Unity / Jumbo\" build)."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:376
msgid "For the folders accelerated by this option, multiple ``.cpp`` files are compiled in each translation unit, so headers can be shared between multiple files, which can dramatically decrease build times."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:380
msgid "To make a SCU build, use the ``scu_build=yes`` SCons option."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:382
msgid "When developing a Pull Request using SCU builds, be sure to make a regular build prior to submitting the PR. This is because SCU builds by nature include headers from earlier ``.cpp`` files in the translation unit, therefore won't catch all the includes you will need in a regular build. The CI will catch these errors but it will usually be faster to catch them on a local build on your machine."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:390
msgid "Export templates"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:392
msgid "Official export templates are downloaded from the Godot Engine site: `godotengine.org <https://godotengine.org/>`__. However, you might want to build them yourself (in case you want newer ones, you are using custom modules, or simply don't trust your own shadow)."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:397
msgid "If you download the official export templates package and unzip it, you will notice that most files are optimized binaries or packages for each platform:"
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:420
msgid "To create those yourself, follow the instructions detailed for each platform in this same tutorial section. Each platform explains how to create its own template."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:424
msgid "The ``version.txt`` file should contain the corresponding Godot version identifier. This file is used to install export templates in a version-specific directory to avoid conflicts. For instance, if you are building export templates for Godot 3.1.1, ``version.txt`` should contain ``3.1.1.stable`` on the first line (and nothing else). This version identifier is based on the ``major``, ``minor``, ``patch`` (if present) and ``status`` lines of the `version.py file in the Godot Git repository <https://github.com/godotengine/godot/blob/master/version.py>`__."
msgstr ""
#: ../../docs/contributing/development/compiling/introduction_to_the_buildsystem.rst:432
msgid "If you are developing for multiple platforms, macOS is definitely the most convenient host platform for cross-compilation, since you can cross-compile for almost every target (except for UWP). Linux and Windows come in second place, but Linux has the advantage of being the easier platform to set this up."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,256 +16,264 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/optimizing_for_size.rst:4
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:4
msgid "Optimizing a build for size"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:9
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:9
msgid "Rationale"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:11
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:11
msgid "Sometimes, it is desired to optimize a build for size rather than speed. This means not compiling unused functions from the engine, as well as using specific compiler flags to aid on decreasing build size. Common situations include creating builds for mobile and Web platforms."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:16
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:16
msgid "This tutorial aims to give an overview on different methods to create a smaller binary. Before continuing, it is recommended to read the previous tutorials on compiling Godot for each platform."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:20
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:20
msgid "The options below are listed from the most important (greatest size savings) to the least important (lowest size savings)."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:24
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:24
msgid "Stripping binaries"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:26
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:26
msgid "**Space savings:** Very high"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:27
#: ../../docs/development/compiling/optimizing_for_size.rst:56
#: ../../docs/development/compiling/optimizing_for_size.rst:72
#: ../../docs/development/compiling/optimizing_for_size.rst:96
#: ../../docs/development/compiling/optimizing_for_size.rst:113
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:27
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:56
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:72
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:96
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:113
msgid "**Difficulty:** Easy"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:28
#: ../../docs/development/compiling/optimizing_for_size.rst:73
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:28
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:73
msgid "**Performed in official builds:** Yes"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:30
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:30
msgid "If you build Windows (MinGW), Linux or macOS binaries from source, remember to strip debug symbols from binaries by installing the ``strip`` package from your distribution then running:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:38
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:38
msgid "On Windows, ``strip.exe`` is included in most MinGW toolchain setups."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:40
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:40
msgid "This will reduce the size of compiled binaries by a factor between 5× and 10×. The downside is that crash backtraces will no longer provide accurate information (which is useful for troubleshooting the cause of a crash). :ref:`C++ profilers <doc_using_cpp_profilers>` will also no longer be able to display function names (this does not affect the built-in GDScript profiler)."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:48
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:48
msgid "The above command will not work on Windows binaries compiled with MSVC and platforms such as Android and HTML5. Instead, pass ``debug_symbols=no`` on the SCons command line when compiling."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:53
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:53
msgid "Optimizing for size instead of speed"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:55
#: ../../docs/development/compiling/optimizing_for_size.rst:71
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:55
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:71
msgid "**Space savings:** High"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:57
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:57
msgid "**Performed in official builds:** Yes, but only for HTML5"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:59
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:59
msgid "Godot 3.1 onwards allows compiling using size optimizations (instead of speed). To enable this, set the ``optimize`` flag to ``size``:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:66
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:66
msgid "Some platforms such as WebAssembly already use this mode by default."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:69
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:69
msgid "Compiling with link-time optimization"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:75
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:75
msgid "Enabling link-time optimization produces more efficient binaries, both in terms of performance and file size. It works by eliminating duplicate template functions and unused code. It can currently be used with the GCC and MSVC compilers:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:84
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:84
msgid "Linking becomes much slower and more RAM-consuming with this option, so it should be used only for release builds:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:87
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:87
msgid "When compiling the ``master`` branch, you need to have at least 8 GB of RAM available for successful linking with LTO enabled."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:89
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:89
msgid "When compiling the ``3.x`` branch, you need to have at least 6 GB of RAM available for successful linking with LTO enabled."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:93
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:93
msgid "Disabling 3D"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:95
#: ../../docs/development/compiling/optimizing_for_size.rst:112
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:95
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:112
msgid "**Space savings:** Moderate"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:97
#: ../../docs/development/compiling/optimizing_for_size.rst:114
#: ../../docs/development/compiling/optimizing_for_size.rst:153
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:97
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:114
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:155
msgid "**Performed in official builds:** No"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:99
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:99
msgid "For 2D games, having the whole 3D engine available usually makes no sense. Because of this, there is a build flag to disable it:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:105
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:105
msgid "Tools must be disabled in order to use this flag, as the editor is not designed to operate without 3D support. Without it, the binary size can be reduced by about 15%."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:110
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:110
msgid "Disabling advanced GUI objects"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:116
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:116
msgid "Most small games don't require complex GUI controls such as Tree, ItemList, TextEdit or GraphEdit. They can be disabled using a build flag:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:123
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:123
msgid "This is everything that will be disabled:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:125
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:125
msgid "FileDialog"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:126
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:126
msgid "PopupMenu"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:127
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:127
msgid "Tree"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:128
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:128
msgid "TextEdit"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:129
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:129
msgid "CodeEdit"
msgstr ""
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:130
msgid "SyntaxHighlighter"
msgstr ""
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:131
msgid "CodeHighlighter"
msgstr ""
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:132
msgid "TreeItem"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:130
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:133
msgid "OptionButton"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:131
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:134
msgid "SpinBox"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:132
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:135
msgid "ColorPicker"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:133
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:136
msgid "ColorPickerButton"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:134
msgid "RichTextLabel"
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:137
msgid "RichTextlabel"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:135
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:138
msgid "RichTextEffect"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:136
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:139
msgid "CharFXTransform"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:137
msgid "PopupDialog"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:138
msgid "WindowDialog"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:139
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:140
msgid "AcceptDialog"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:140
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:141
msgid "ConfirmationDialog"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:141
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:142
msgid "MarginContainer"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:142
msgid "ViewportContainer"
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:143
msgid "SubViewportContainer"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:143
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:144
msgid "SplitContainer"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:144
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:145
msgid "HSplitContainer"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:145
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:146
msgid "VSplitContainer"
msgstr ""
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:147
msgid "GraphNode"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:146
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:148
msgid "GraphEdit"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:149
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:151
msgid "Disabling unwanted modules"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:151
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:153
msgid "**Space savings:** Very low to moderate depending on modules"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:152
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:154
msgid "**Difficulty:** Medium to hard depending on modules"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:155
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:157
msgid "A lot of Godot's functions are offered as modules. You can see a list of modules with the following command:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:162
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:164
msgid "The list of modules that can be disabled will appear, together with all build options. If you are working on a simple 2D game, you could disable a lot of them:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:170
msgid "If this proves not to work for your use case, you should review the list of modules and see which ones you actually still need for your game (e.g. you might want to keep networking-related modules, regex support, or theora/webm to play videos)."
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:172
msgid "If this proves not to work for your use case, you should review the list of modules and see which ones you actually still need for your game (e.g. you might want to keep networking-related modules, regex support, or theora to play videos)."
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:175
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:177
msgid "Alternatively, you can supply a list of disabled modules by creating ``custom.py`` at the root of the source, with the contents similar to the following:"
msgstr ""
#: ../../docs/development/compiling/optimizing_for_size.rst:218
#: ../../docs/contributing/development/compiling/optimizing_for_size.rst:217
msgid ":ref:`doc_overriding_build_options`."
msgstr ""

View File

@@ -0,0 +1,184 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:4
msgid "Android Studio"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:6
msgid "`Android Studio <https://developer.android.com/studio>`_ is a free IDE for Android development made by `Google <https://about.google/>`_ and `JetBrains <https://www.jetbrains.com/>`_. It's based on `IntelliJ IDEA <https://www.jetbrains.com/idea/>`_ and has a feature-rich editor which supports Java and C/C++. It can be used to work on Godot's core engine as well as the Android platform codebase."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:13
msgid "Importing the project"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:15
msgid "From the Android Studio's welcome window select **Open**."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:21
msgid "Android Studio's welcome window."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:23
msgid "Navigate to ``<Godot root directory>/platform/android/java`` and select the ``settings.gradle`` file."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:24
msgid "Android Studio will import and index the project."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:27
msgid "Android Studio project layout"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:29
msgid "The project is organized using `Android Studio's modules <https://developer.android.com/studio/projects#ApplicationModules>`_:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:34
msgid "``lib`` module:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:32
msgid "Located under ``<Godot root directory>/platform/android/java/lib``, this is a **library module** that organizes"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:33
msgid "the Godot java and native code and make it available as a reusable dependency / artifact."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:34
msgid "The artifact generated by this module is made available for other Android modules / projects to use as a dependency, via `MavenCentral <https://repo1.maven.org/maven2/org/godotengine/godot/>`_."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:39
msgid "``editor`` module:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:37
msgid "Located under ``<Godot root directory>/platform/android/java/editor``, this is an **application module** that holds"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:38
msgid "the source code for the Android port of the Godot Editor."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:39
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:44
msgid "This module has a dependency on the ``lib`` module."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:44
msgid "``app`` module:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:42
msgid "Located under ``<Godot root directory>/platform/android/java/app``, this is an **application module** that holds"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:43
msgid "the source code for the Android build templates."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:47
msgid "Building & debugging the editor module"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:55
msgid "To build the ``editor`` module:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:50
msgid "Select the `Run/Debug Configurations drop down <https://developer.android.com/studio/run/rundebugconfig#running>`_ and select ``editor``."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:56
msgid "Select **Run > Run 'editor'** from the top menu or `click the Run icon <https://developer.android.com/studio/run/rundebugconfig#running>`_."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:72
msgid "To debug the ``editor`` module:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:58
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:91
msgid "Open the **Build Variants** window using **View > Tools Windows > Build Variants** from the top menu."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:59
msgid "In the **Build Variants** window, make sure that in the **Active Build Variant** column, the ``:editor`` entry is set to **dev**."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:65
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:98
msgid "Open the **Run/Debug Configurations** window by clicking on **Run > Edit Configurations...** on the top menu."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:66
msgid "In the **Run/Debug Configurations** window, select the ``editor`` entry, and under **Debugger** make sure the **Debug Type** is set to ``Dual (Java + Native)``"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:72
msgid "Select **Run > Debug 'editor'** from the top menu or `click the Debug icon <https://developer.android.com/studio/run/rundebugconfig#running>`_."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:75
msgid "Building & debugging the app module"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:77
msgid "The ``app`` module requires the presence of a Godot project in its ``assets`` directory (``<Godot root directory>/platform/android/java/app/assets``) to run. This is usually handled by the Godot Editor during the export process. While developing in Android Studio, it's necessary to manually add a Godot project under that directory to replicate the export process. Once that's done, you can follow the instructions below to run/debug the ``app`` module:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:88
msgid "To build the ``app`` module:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:83
msgid "Select the `Run/Debug Configurations drop down <https://developer.android.com/studio/run/rundebugconfig#running>`_ and select ``app``."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:89
msgid "Select **Run > Run 'app'** from the top menu or `click the Run icon <https://developer.android.com/studio/run/rundebugconfig#running>`_."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:106
msgid "To debug the ``app`` module:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:92
msgid "In the **Build Variants** window, make sure that in the **Active Build Variant** column, the ``:app`` entry is set to **dev**."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:99
msgid "In the **Run/Debug Configurations** window, select the ``app`` entry, and under **Debugger** make sure the **Debug Type** is set to ``Dual (Java + Native)``"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:105
msgid "Select **Run > Debug 'app'** from the top menu or `click the Debug icon <https://developer.android.com/studio/run/rundebugconfig#running>`_."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/android_studio.rst:108
msgid "If you run into any issues, ask for help in `Godot's Android dev channel <https://chat.godotengine.org/channel/android>`__."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,101 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:4
msgid "CLion"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:6
msgid "`CLion <https://www.jetbrains.com/clion/>`_ is a commercial `JetBrains <https://www.jetbrains.com/>`_ IDE for C++."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:10
msgid "Importing the project"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:12
msgid "CLion can import a project's `compilation database file <https://clang.llvm.org/docs/JSONCompilationDatabase.html>`_, commonly named ``compile_commands.json``. To generate the compilation database file, open the terminal, change to the Godot root directory, and run:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:18
msgid "Then, open the Godot root directory with CLion. CLion will import the compilation database, index the codebase, and provide autocompletion and other advanced code navigation and refactoring functionality."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:21
msgid "Compiling and debugging the project"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:23
msgid "CLion does not support compiling and debugging Godot via SCons out of the box. This can be achieved by creating a custom build target and run configuration in CLion. Before creating a custom build target, you must :ref:`compile Godot <toc-devel-compiling>` once on the command line, to generate the Godot executable. Open the terminal, change into the Godot root directory, and execute:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:29
msgid "To add a custom build target that invokes SCons for compilation:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:31
msgid "Open CLion and navigate to **Preferences > Build, Execution, Deployment > Custom Build Targets**"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:36
msgid "Click **Add target** and give the target a name, e.g. ``Godot debug``."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:41
msgid "Click **...** next to the **Build:** selectbox, then click the **+** button in the **External Tools** dialog to add a new external tool."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:46
msgid "Give the tool a name, e.g. ``Build Godot debug``, set **Program** to ``scons``, set **Arguments** to the compilation settings you want (see :ref:`compiling Godot <toc-devel-compiling>`), and set the **Working directory** to ``$ProjectFileDir$``, which equals the Godot root directory. Click **OK** to create the tool."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:48
msgid "CLion does not expand shell commands like ``scons -j$(nproc)``. Use concrete values instead, e.g. ``scons -j8``."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:53
msgid "Back in the **External Tools** dialog, click the **+** again to add a second external tool for cleaning the Godot build via SCons. Give the tool a name, e.g. ``Clean Godot debug``, set **Program** to ``scons``, set **Arguments** to ``-c`` (which will clean the build), and set the **Working directory** to ``$ProjectFileDir$``. Click **OK** to create the tool."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:58
msgid "Close the **External Tools** dialog. In the **Custom Build Target** dialog for the custom ``Godot debug`` build target, select the **Build Godot debug** tool from the **Build** select box, and select the **Clean Godot debug** tool from the **Clean** select box. Click **OK** to create the custom build target."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:63
msgid "In the main IDE window, click **Add Configuration**."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:68
msgid "In the **Run/Debug Configuration** dialog, click **Add new...**, then select **Custom Build Application** to create a new custom run/debug configuration."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:73
msgid "Give the run/debug configuration a name, e.g. ``Godot debug``, select the ``Godot debug`` custom build target as the **Target**. Select the Godot executable in the ``bin/`` folder as the **Executable**, and set the **Program arguments** to ``--editor --path path-to-your-project/``, where ``path-to-your-project/`` should be a path pointing to an existing Godot project. If you omit the ``--path`` argument, you will only be able to debug the Godot Project Manager window. Click **OK** to create the run/debug configuration."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:78
msgid "You can now build, run, debug, profile, and Valgrind check the Godot editor via the run configuration."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/clion.rst:83
msgid "When playing a scene, the Godot editor will spawn a separate process. You can debug this process in CLion by going to **Run > Attach to process...**, typing ``godot``, and selecting the Godot process with the highest **pid** (process ID), which will usually be the running project."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,119 +16,119 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:4
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:4
msgid "Code::Blocks"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:6
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:6
msgid "`Code::Blocks <https://codeblocks.org/>`_ is a free, open source, cross platform IDE."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:9
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:9
msgid "Creating a new project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:11
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:11
msgid "From Code::Blocks' main screen, click **Create a new project** or select **File > New > Project...**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:17
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:17
msgid "In the **New from template** window, from **Projects**, select **Empty project**, and click **Go**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:23
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:23
msgid "Click Next, to pass the welcome to the new empty project wizard."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:29
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:29
msgid "The project file should be created in the root of the cloned project folder. To achieve this, first, ensure that the **Project title** is the same as the folder name that Godot was cloned into. Unless you cloned the project into a folder with a different name, this will be ``godot``."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:31
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:31
msgid "Second, ensure that the **Folder to create project in** is the folder you ran the Git clone command from, not the ``godot`` project folder. Confirm that the **Resulting filename** field will create the project file in the root of the cloned project folder."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:37
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:37
msgid "The compiler and configuration settings are managed through **SCons** and will be configured later. However, it's worth deselecting the **Create \"Release\" configuration** option; so only a single build target is created before clicking **Finish**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:44
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:44
msgid "Configuring the build"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:46
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:46
msgid "The first step is to change the project properties. Right-click on the new project and select **Properties...**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:52
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:52
msgid "Check the **This is a custom Makefile** property. Click OK to save the changes."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:58
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:58
msgid "The next step is to change the build options. Right-click on the new project and select **Build Options...**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:64
msgid "Select the **\"Make\" commands** tab and remove all the existing commands for all the build targets. For each build target enter the **SCons** command for creating the desired build in the **Build project/target** field. The minimum is ``scons``. For details on the **SCons** build options, see :ref:`doc_introduction_to_the_buildsystem`. It's also useful to add the ``scons --clean`` command in the **Clean project/target** field to the project's default commmands."
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:64
msgid "Select the **\"Make\" commands** tab and remove all the existing commands for all the build targets. For each build target enter the **SCons** command for creating the desired build in the **Build project/target** field. The minimum is ``scons``. For details on the **SCons** build options, see :ref:`doc_introduction_to_the_buildsystem`. It's also useful to add the ``scons --clean`` command in the **Clean project/target** field to the project's default commands."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:66
msgid "If you're using Windows, all the commands need to be preceded with ``cmd /c`` to iniitalize the command interpreter."
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:66
msgid "If you're using Windows, all the commands need to be preceded with ``cmd /c`` to initialize the command interpreter."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:76
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:76
msgid "Windows example:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:82
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:82
msgid "Code::Blocks should now be configured to build Godot; so either select **Build > Build**, click the gear button, or press :kbd:`Ctrl + F9`."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:85
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:85
msgid "Configuring the run"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:87
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:87
msgid "Once **SCons** has successfully built the desired target, reopen the project **Properties...** and select the **Build targets** tab. In the **Output filename** field, browse to the ``bin`` folder and select the compiled file."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:89
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:89
msgid "Deselect the **Auto-generate filename prefix** and **Auto-generate filename extension** options."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:95
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:95
msgid "Code::Blocks should now be configured to run your compiled Godot executable; so either select **Build > Run**, click the green arrow button, or press :kbd:`Ctrl + F10`."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:97
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:97
msgid "There are two additional points worth noting. First, if required, the **Execution working dir** field can be used to test specific projects, by setting it to the folder containing the ``project.godot`` file. Second, the **Build targets** tab can be used to add and remove build targets for working with and creating different builds."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:100
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:100
msgid "Adding files to the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:102
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:102
msgid "To add all the Godot code files to the project, right-click on the new project and select **Add files recursively...**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:108
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:108
msgid "It should automatically select the project folder; so simply click **Open**. By default, all code files are included, so simply click **OK**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:115
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:115
msgid "Code style configuration"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:117
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:117
msgid "Before editing any files, remember that all code needs to comply with the :ref:`doc_code_style_guidelines`. One important difference with Godot is the use of tabs for indents. Therefore, the key default editor setting that needs to be changed in Code::Blocks is to enable tabs for indents. This setting can be found by selecting **Settings > Editor**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:123
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:123
msgid "Under **General Settings**, on the **Editor Settings** tab, under **Tab Options** check **Use TAB character**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/code_blocks.rst:129
#: ../../docs/contributing/development/configuring_an_ide/code_blocks.rst:129
msgid "That's it. You're ready to start contributing to Godot using the Code::Blocks IDE. Remember to save the project file and the **Workspace**. If you run into any issues, ask for help in one of `Godot's community channels <https://godotengine.org/community>`__."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,22 +16,26 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/configuring_an_ide/index.rst:2
#: ../../docs/contributing/development/configuring_an_ide/index.rst:4
msgid "Configuring an IDE"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/index.rst:4
#: ../../docs/contributing/development/configuring_an_ide/index.rst:6
msgid "We assume that you have already `cloned <https://github.com/godotengine/godot>`_ and :ref:`compiled <toc-devel-compiling>` Godot."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/index.rst:7
#: ../../docs/contributing/development/configuring_an_ide/index.rst:9
msgid "You can easily develop Godot with any text editor and by invoking ``scons`` on the command line, but if you want to work with an IDE (Integrated Development Environment), here are setup instructions for some popular ones:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/index.rst:24
#: ../../docs/contributing/development/configuring_an_ide/index.rst:27
msgid "It is possible to use other IDEs, but their setup is not documented yet."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/index.rst:29
msgid "If your editor supports the `language server protocol <https://microsoft.github.io/language-server-protocol/>`__, you can use `clangd <https://clangd.llvm.org>`__ for completion, diagnostics, and more. You can generate a compilation database for use with clangd one of two ways:"
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,103 +16,103 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:4
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:4
msgid "KDevelop"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:6
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:6
msgid "`KDevelop <https://www.kdevelop.org>`_ is a free, open source IDE for all desktop platforms."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:9
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:9
msgid "Importing the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:11
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:11
msgid "From the KDevelop's main screen select **Open Project**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:17
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:17
msgid "KDevelop's main screen."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:19
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:19
msgid "Navigate to the Godot root folder and select it."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:20
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:20
msgid "On the next screen, choose **Custom Build System** for the **Project Manager**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:26
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:26
msgid "After the project has been imported, open the project configuration by right-clicking on it in the **Projects** panel and selecting **Open Configuration..** option."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:33
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:33
msgid "Under **Language Support** open the **Includes/Imports** tab and add the following paths:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:49
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:49
msgid "Apply the changes."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:50
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:50
msgid "Under **Custom Build System** add a new build configuration with the following settings:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:53
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:53
msgid "Build Directory"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:53
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:53
msgid "*blank*"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:55
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:55
msgid "Enable"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:55
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:55
msgid "**True**"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:57
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:57
msgid "Executable"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:57
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:57
msgid "**scons**"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:59
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:59
msgid "Arguments"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:59
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:59
msgid "See :ref:`doc_introduction_to_the_buildsystem` for a full list of arguments."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:66
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:66
msgid "Apply the changes and close the configuration window."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:69
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:69
msgid "Debugging the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:71
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:71
msgid "Select **Run > Configure Launches...** from the top menu."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:77
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:77
msgid "Click **Add** to create a new launch configuration."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:78
msgid "Select **Executable** option and specify the path to your executable located in the ``<Godot root directory>/bin`` folder. The name depends on your build configuration, e.g. ``godot.x11.tools.64`` for 64-bit X11 platform with ``tools`` enabled."
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:78
msgid "Select **Executable** option and specify the path to your executable located in the ``<Godot root directory>/bin`` folder. The name depends on your build configuration, e.g. ``godot.linuxbsd.editor.dev.x86_64`` for 64-bit LinuxBSD platform with ``platform=editor`` and ``dev_build=yes``."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/kdevelop.rst:86
#: ../../docs/contributing/development/configuring_an_ide/kdevelop.rst:87
msgid "If you run into any issues, ask for help in one of `Godot's community channels <https://godotengine.org/community>`__."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,111 +16,111 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:4
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:4
msgid "Qt Creator"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:6
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:6
msgid "`Qt Creator <https://doc.qt.io/qtcreator/index.html>`_ is a free, open source IDE for all desktop platforms."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:9
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:9
msgid "Importing the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:11
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:11
msgid "From the Qt Creator's main screen select **New Project > Import Project > Import Existing Project**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:17
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:17
msgid "Under **Location** select the Godot root folder."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:23
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:23
msgid "Next, you can choose which folders and files will be visible to the project. While C/C++ files are added automatically, other extensions can be potentially useful: ``*.glsl`` for shader files, ``*.py`` for buildsystem files, ``*.java`` for Android platform development, ``*.mm`` for macOS platform development."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:32
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:32
msgid "You can change this configuration later by right-clicking on your project and selecting the **Edit Files...** option."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:40
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:40
msgid "Finish the import."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:41
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:41
msgid "Open the ``project_name.includes`` file and add a line containing ``.`` to it to correctly enable the code completion."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:48
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:48
msgid "From the left-side menu select **Projects** and open the **Build** tab."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:49
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:49
msgid "Delete the predefined ``make`` build step."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:55
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:55
msgid "Click **Add Build Step > Custom Process Step** to add a new build step with the following settings:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:59
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:59
msgid "Command"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:59
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:59
msgid "**scons**"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:61
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:61
msgid "Arguments"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:61
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:61
msgid "See :ref:`doc_introduction_to_the_buildsystem` for a full list of arguments."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:68
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:68
msgid "If the build fails with ``Could not start process \"scons\"``, it can mean that ``scons`` is not in your ``PATH`` environment variable. In this case, you'll have to specify the full path to the SCons binary."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:73
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:73
msgid "Debugging the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:75
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:75
msgid "From the left-side menu select **Projects** and open the **Run** tab."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:76
msgid "Under **Executable** specify the path to your executable located in the ``<Godot root directory>/bin`` folder. The name depends on your build configuration, e.g. ``godot.x11.tools.64`` for 64-bit X11 platform with ``tools`` enabled. You can use ``%{buildDir}`` to reference the project root, e.g: ``%{buildDir}/bin/godot.x11.opt.tools.64``."
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:76
msgid "Under **Executable** specify the path to your executable located in the ``<Godot root directory>/bin`` folder. The name depends on your build configuration, e.g. ``godot.linuxbsd.editor.dev.x86_64`` for 64-bit LinuxBSD platform with ``platform=editor`` and ``dev_build=yes``. You can use ``%{buildDir}`` to reference the project root, e.g: ``%{buildDir}/bin/godot.linuxbsd.editor.dev.x86_64``."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:80
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:81
msgid "If you want to run a specific project, specify its root folder under **Working directory**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:81
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:82
msgid "If you want to run the editor, add ``-e`` to the **Command line arguments** field."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:87
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:88
msgid "To learn more about command line arguments, refer to the :ref:`command line tutorial <doc_command_line_tutorial>`."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:91
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:92
msgid "Code style configuration"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:93
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:94
msgid "Developers must follow the project's :ref:`code style <doc_code_style_guidelines>` and the IDE should help them follow it. By default, Qt Creator uses spaces for indentation which doesn't match the Godot code style guidelines. You can change this behavior by changing the **Code Style** in **Tools > Options > C++**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:102
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:103
msgid "Click on **Edit** to change the current settings, then click on **Copy Built-in Code Style** button to set a new code style. Set a name for it (e.g. Godot) and change the Tab policy to be **Tabs Only**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/qt_creator.rst:110
#: ../../docs/contributing/development/configuring_an_ide/qt_creator.rst:111
msgid "If you run into any issues, ask for help in one of `Godot's community channels <https://godotengine.org/community>`__."
msgstr ""

View File

@@ -0,0 +1,93 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:4
msgid "Rider"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:6
msgid "`Rider <https://www.jetbrains.com/rider/>`_ is a commercial `JetBrains <https://www.jetbrains.com/>`_ IDE for C# and C++ that uses the same solution system as Visual Studio."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:10
msgid "Importing the project"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:12
msgid "If you already use Visual Studio as your main IDE, you can use the same solution file in Rider. Rider and Visual Studio use the same solution format, so you can switch between the two IDEs without rebuilding the solution file. Debug configurations need to be changed when going from one IDE to another."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:16
msgid "Rider requires a solution file to work on a project. While Godot does not come with the solution file, it can be generated using SCons."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:19
msgid "Navigate to the Godot root folder and open a Command Prompt or PowerShell window."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:20
msgid "Copy, paste and run the next command to generate the solution."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:26
msgid "The ``vsproj`` parameter signals that you want Visual Studio solution generated. The ``dev_build`` parameter makes sure the debug symbols are included, allowing to e.g. step through code using breakpoints."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:29
msgid "If you have Rider setup as your main IDE for .sln, you can now open the project by double-clicking on the ``godot.sln`` in the project root or by using the **Open** option inside of Rider."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:32
msgid "Rider could fail to build the first time you open the project. If that is the case, you can close Rider and open the solution in Visual Studio, build it, close Visual Studio, and open the solution in Rider again. You are now able to build the project from Rider."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:37
msgid "Compiling and debugging the project"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:38
msgid "Rider comes with a built-in debugger that can be used to debug the Godot project. You can launch the debugger by pressing the **Debug** icon at the top of the screen, this only works for the Project manager, if you want to debug the editor, you need to configure the debugger first."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:45
msgid "Click on the **Godot > Edit Configurations** option at the top of the screen."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:50
msgid "Delete what is under **Program arguments** and paste the following line:"
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:56
msgid "This will tell the executable to debug the specified project without using the project manager. Use the root path to the project folder, not ``project.godot`` file path."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:62
msgid "Finally click on apply and ok to save the changes."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:64
msgid "You can now launch the debugger by pressing the **Debug** icon at the top of the screen and it will open the project to debug."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/rider.rst:66
msgid "Alternatively you can use **Run > Attach to Process** to attach the debugger to a running Godot instance."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,75 +16,83 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:4
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:4
msgid "Visual Studio"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:6
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:6
msgid "`Visual Studio Community <https://visualstudio.microsoft.com>`__ is a Windows-only IDE by `Microsoft <https://microsoft.com>`_ that's free for individual use or non-commercial use within organizations. It has many useful features, such as memory view, performance view, source control and more."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:12
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:12
msgid "Importing the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:14
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:14
msgid "Visual Studio requires a solution file to work on a project. While Godot does not come with the solution file, it can be generated using SCons."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:17
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:17
msgid "Navigate to the Godot root folder and open a Command Prompt or PowerShell window."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:18
msgid "Run ``scons platform=windows vsproj=yes`` to generate the solution."
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:0
msgid "Run ``scons platform=windows vsproj=yes dev_build=yes`` to generate the solution with debug symbols."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:19
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:0
msgid "The ``vsproj`` parameter signals that you want Visual Studio solution generated."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:0
msgid "The ``dev_build`` parameter makes sure the debug symbols are included, allowing to e.g. step through code using breakpoints."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:21
msgid "You can now open the project by double-clicking on the ``godot.sln`` in the project root or by using the **Open a project or solution** option inside of the Visual Studio."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:21
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:23
msgid "Use the **Build** top menu to build the project."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:23
msgid "Visual Studio must be configured with the C++ package. It can be selected in the intaller:"
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:25
msgid "Visual Studio must be configured with the C++ package. It can be selected in the installer:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:30
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:32
msgid "Debugging the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:32
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:34
msgid "Visual Studio features a powerful debugger. This allows the user to examine Godot's source code, stop at specific points in the code, inspect the current execution context, and make live changes to the codebase."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:36
msgid "You can launch the project with the debugger attached using the **Debug > Start Debugging** option from the top menu. However, unless you want to debug the project manager specifically, you'd need to configure debugging options first. This is due to the fact that when the Godot project manager opens a project, the initial process is terminated and the debugger gets detached."
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:38
msgid "You can launch the project with the debugger attached using the **Debug > Start Debugging** option from the top menu. However, unless you want to debug the Project Manager specifically, you'd need to configure debugging options first. This is due to the fact that when the Godot Project Manager opens a project, the initial process is terminated and the debugger gets detached."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:41
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:43
msgid "To configure the launch options to use with the debugger use **Project > Properties** from the top menu:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:47
msgid "Open the **Debugging** section and under **Command Arguments** add two new arguments: the ``-e`` flag opens the editor instead of the project manager, and the ``--path`` argument tells the executable to open the specified project (must be provided as an *absolute* path to the project root, not the ``project.godot`` file)."
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:49
msgid "Open the **Debugging** section and under **Command Arguments** add two new arguments: the ``-e`` flag opens the editor instead of the Project Manager, and the ``--path`` argument tells the executable to open the specified project (must be provided as an *absolute* path to the project root, not the ``project.godot`` file; if the path contains spaces be sure to pass it inside double quotation marks)."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:55
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:57
msgid "To learn more about command line arguments, refer to the :ref:`command line tutorial <doc_command_line_tutorial>`."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:58
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:60
msgid "Even if you start the project without a debugger attached it can still be connected to the running process using **Debug > Attach to Process...** menu."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:61
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:63
msgid "To check that everything is working, put a breakpoint in ``main.cpp`` and press :kbd:`F5` to start debugging."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio.rst:67
#: ../../docs/contributing/development/configuring_an_ide/visual_studio.rst:69
msgid "If you run into any issues, ask for help in one of `Godot's community channels <https://godotengine.org/community>`__."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,102 +16,110 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:4
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:4
msgid "Visual Studio Code"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:6
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:6
msgid "`Visual Studio Code <https://code.visualstudio.com>`_ is a free cross-platform code editor by `Microsoft <https://microsoft.com>`_ (not to be confused with :ref:`doc_configuring_an_ide_vs`)."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:10
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:10
msgid "Importing the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:12
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:12
msgid "Make sure the C/C++ extension is installed. You can find instructions in the `official documentation <https://code.visualstudio.com/docs/languages/cpp>`_. Alternatively, `clangd <https://open-vsx.org/extension/llvm-vs-code-extensions/vscode-clangd>`_ can be used instead."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:16
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:16
msgid "When using the clangd extension, run ``scons compiledb=yes``."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:17
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:17
msgid "From the Visual Studio Code's main screen open the Godot root folder with **File > Open Folder...**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:19
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:19
msgid "Press :kbd:`Ctrl + Shift + P` to open the command prompt window and enter *Configure Task*."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:24
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:24
msgid "Select the **Create tasks.json file from template** option."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:29
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:29
msgid "Then select **Others**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:34
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:34
msgid "If there is no such option as **Create tasks.json file from template** available, either delete the file if it already exists in your folder or create a ``.vscode/tasks.json`` file manually. See `Tasks in Visual Studio Code <https://code.visualstudio.com/docs/editor/tasks#_custom-tasks>`_ for more details on tasks."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:36
msgid "Within the ``tasks.json`` file find the ``\"tasks\"`` array and add a new section to it:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:50
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:56
msgid "An example of a filled out ``tasks.json``."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:52
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:58
msgid "Arguments can be different based on your own setup and needs. See :ref:`doc_introduction_to_the_buildsystem` for a full list of arguments."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:56
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:62
msgid "Debugging the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:58
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:64
msgid "To run and debug the project you need to create a new configuration in the ``launch.json`` file."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:60
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:66
msgid "Press :kbd:`Ctrl + Shift + D` to open the Run panel."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:61
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:67
msgid "If ``launch.json`` file is missing you will be prompted to create a new one."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:66
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:72
msgid "Select **C++ (GDB/LLDB)**. There may be another platform specific option here. If selected, adjust the configuration example provided accordingly."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:68
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:74
msgid "Within the ``launch.json`` file find the ``\"configurations\"`` array and add a new section to it:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:136
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:142
msgid "An example of a filled out ``launch.json``."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:141
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:147
msgid "Due to sporadic performance issues, it is recommended to use LLDB over GDB on Unix-based systems. Make sure that the `CodeLLDB extension <https://marketplace.visualstudio.com/items?itemName=vadimcn.vscode-lldb>`_ is installed."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:145
msgid "If you encounter issues with lldb, you may consider using gdb (see the X11_gdb configuration)."
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:151
msgid "If you encounter issues with lldb, you may consider using gdb (see the LinuxBSD_gdb configuration)."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:147
msgid "Do note that lldb may work better with llvm-based builds. See :ref:`doc_compiling_for_x11` for further information."
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:153
msgid "Do note that lldb may work better with LLVM-based builds. See :ref:`doc_compiling_for_linuxbsd` for further information."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:149
msgid "The name under ``program`` depends on your build configuration, e.g. ``godot.x11.tools.64`` for 64-bit X11 platform with ``tools`` enabled."
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:155
msgid "The name under ``program`` depends on your build configuration, e.g. ``godot.linuxbsd.editor.dev.x86_64`` for 64-bit LinuxBSD platform with ``platform=editor`` and ``dev_build=yes``."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/visual_studio_code.rst:152
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:159
msgid "If you run into any issues, ask for help in one of `Godot's community channels <https://godotengine.org/community>`__."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/visual_studio_code.rst:164
msgid "To get linting on class reference XML files, install the `vscode-xml extension <https://marketplace.visualstudio.com/items?itemName=redhat.vscode-xml>`__."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,147 +16,139 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:4
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:4
msgid "Xcode"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:6
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:6
msgid "`Xcode <https://developer.apple.com/xcode>`_ is a free macOS-only IDE. You can download it from the Mac App Store."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:10
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:10
msgid "Importing the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:12
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:12
msgid "From Xcode's main screen create a new project using the **Other > External Build System** template."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:18
msgid "Open your build targets from the **Targets** section and select the **Info** tab."
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:18
msgid "Now choose a name for your project and set the path to scons executable in build tool (to find the path you can type ``where scons`` in a terminal)."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:19
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:24
msgid "Open the main target from the **Targets** section and select the **Info** tab."
msgstr ""
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:30
msgid "Fill out the form with the following settings:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:22
msgid "Build Tool"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:22
msgid "A full path to the **scons** executable, e.g. **/usr/local/bin/scons**"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:24
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:33
msgid "Arguments"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:24
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:33
msgid "See :ref:`doc_introduction_to_the_buildsystem` for a full list of arguments."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:26
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:35
msgid "Directory"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:26
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:35
msgid "A full path to the Godot root folder"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:33
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:38
msgid "Add a Command Line Tool target which will be used for indexing the project by choosing **File > New > Target...**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:40
msgid "Select **OS X > Application > Command Line Tool**."
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:45
msgid "Select **macOS > Application > Command Line Tool**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:46
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:51
msgid "Name it something so you know not to compile with this target (e.g. ``GodotXcodeIndex``)."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:48
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:53
msgid "For this target open the **Build Settings** tab and look for **Header Search Paths**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:49
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:54
msgid "Set **Header Search Paths** to the absolute path to the Godot root folder. You need to include subdirectories as well. To achieve that, add two two asterisks (``**``) to the end of the path, e.g. ``/Users/me/repos/godot-source/**``."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:53
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:58
msgid "Add the Godot source to the project by dragging and dropping it into the project file browser."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:54
msgid "Uncheck **Create external build system project**."
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:59
msgid "Select **Create groups** for the **Added folders** option and check *only* your command line indexing target in the **Add to targets** section."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:60
msgid "Next select **Create groups** for the **Added folders** option and check *only* your command line indexing target in the **Add to targets** section."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:67
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:66
msgid "Xcode will now index the files. This may take a few minutes."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:68
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:67
msgid "Once Xcode is done indexing, you should have jump-to-definition, autocompletion, and full syntax highlighting."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:72
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:71
msgid "Debugging the project"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:74
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:73
msgid "To enable debugging support you need to edit the external build target's build and run schemes."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:76
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:75
msgid "Open the scheme editor of the external build target."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:77
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:76
msgid "Locate the **Build > Post Actions** section."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:78
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:77
msgid "Add a new script run action"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:79
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:78
msgid "Under **Provide build settings from** select your project. This allows to reference the project directory within the script."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:81
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:80
msgid "Create a script that will give the binary a name that Xcode can recognize, e.g.:"
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:91
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:90
msgid "Build the external build target."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:93
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:92
msgid "Open the scheme editor again and select **Run**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:99
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:98
msgid "Set the **Executable** to the file you linked in your post-build action script."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:100
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:99
msgid "Check **Debug executable**."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:101
msgid "You can add two arguments on the **Arguments** tab: the ``-e`` flag opens the editor instead of the project manager, and the ``--path`` argument tells the executable to open the specified project (must be provided as an *absolute* path to the project root, not the ``project.godot`` file)."
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:100
msgid "You can add two arguments on the **Arguments** tab: the ``-e`` flag opens the editor instead of the Project Manager, and the ``--path`` argument tells the executable to open the specified project (must be provided as an *absolute* path to the project root, not the ``project.godot`` file)."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:106
msgid "To check that everything is working, put a breakpoint in ``platform/osx/godot_main_osx.mm`` and run the project."
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:105
msgid "To check that everything is working, put a breakpoint in ``platform/macos/godot_main_macos.mm`` and run the project."
msgstr ""
#: ../../docs/development/cpp/configuring_an_ide/xcode.rst:109
#: ../../docs/contributing/development/configuring_an_ide/xcode.rst:108
msgid "If you run into any issues, ask for help in one of `Godot's community channels <https://godotengine.org/community>`__."
msgstr ""

View File

@@ -0,0 +1,209 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:4
msgid "2D coordinate systems and 2D transforms"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:7
msgid "Introduction"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:9
msgid "This is a detailed overview of the available 2D coordinate systems and 2D transforms that are built in. The basic concepts are covered in :ref:`doc_viewport_and_canvas_transforms`."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:12
msgid ":ref:`Transform2D <class_Transform2D>` are matrices that convert coordinates from one coordinate system to an other. In order to use them, it is beneficial to know which coordinate systems are available in Godot. For a deeper understanding, the :ref:`doc_matrices_and_transforms` tutorial offers insights to the underlying functionality."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:18
msgid "Godot 2D coordinate systems"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:20
msgid "The following graphic gives an overview of Godot 2D coordinate systems and the available node-transforms, transform-functions and coordinate-system related functions. At the left is the OS Window Manager screen, at the right are the :ref:`CanvasItems <class_CanvasItem>`. For simplicity reasons this graphic doesn't include :ref:`SubViewport <class_SubViewport>`, :ref:`SubViewportContainer <class_SubViewportContainer>`, :ref:`ParallaxLayer<class_ParallaxLayer>` and :ref:`ParallaxBackground<class_ParallaxBackground>` all of which also influence transforms."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:27
msgid "The graphic is based on a node tree of the following form: ``Root Window (embed Windows)`` ⇒ ``Window (don't embed Windows)`` ⇒ ``CanvasLayer`` ⇒ ``CanvasItem`` ⇒ ``CanvasItem`` ⇒ ``CanvasItem``. There are more complex combinations possible, like deeply nested Window and SubViewports, however this example intends to provide an overview of the methodology in general."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:35
msgid "Click graphic to enlarge."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:38
msgid "**Item Coordinates**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:38
msgid "This is the local coordinate system of a :ref:`CanvasItem <class_CanvasItem>`."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:44
msgid "**Parent Item Coordinates**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:41
msgid "This is the local coordinate system of the parent's *CanvasItem*. When positioning *CanvasItems* in the *Canvas*, they usually inherit the transformations of their parent *CanvasItems*. An exceptions is :ref:`CanvasItems.top_level <class_CanvasItem_property_top_level>`."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:50
msgid "**Canvas Coordinates**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:47
msgid "As mentioned in the previous tutorial :ref:`doc_canvas_layers`, there are two types of canvases (*Viewport* canvas and *CanvasLayer* canvas) and both have a canvas coordinate system. These are also called world coordinates. A *Viewport* can contain multiple *Canvases* with different coordinate systems."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:53
msgid "**Viewport Coordinates**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:53
msgid "This is the coordinate system of the :ref:`Viewport <class_Viewport>`."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:56
msgid "**Camera Coordinates**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:56
msgid "This is only used internally for functionality like 3D-camera ray projections."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:64
msgid "**Embedder Coordinates / Screen Coordinates**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:59
msgid "Every *Viewport* (*Window* or *SubViewport*) in the scene tree is embedded either in a different node or in the OS Window Manager. This coordinate system's origin is identical to the top-left corner of the *Window* or *SubViewport* and its scale is the one of the embedder or the OS Window Manager."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:64
msgid "If the embedder is the OS Window Manager, then they are also called Screen Coordinates."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:72
msgid "**Absolute Embedder Coordinates / Absolute Screen Coordinates**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:67
msgid "The origin of this coordinate system is the top-left corner of the embedding node or the OS Window Manager screen. Its scale is the one of the embedder or the OS Window Manager."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:70
msgid "If the embedder is the OS Window Manager, then they are also called Absolute Screen Coordinates."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:75
msgid "Node transforms"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:77
msgid "Each of the mentioned nodes have one or more transforms associated with them and the combination of these nodes infer the transforms between the different coordinate systems. With a few exceptions, the transforms are :ref:`Transform2D <class_Transform2D>` and the following list shows details and effects of each of them."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:95
msgid "**CanvasItem transform**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:83
msgid "*CanvasItems* are either *Control*-nodes or *Node2D*-nodes."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:85
msgid "For *Control* nodes this transform consists of a :ref:`position <class_Control_property_position>` relative to the parent's origin and a :ref:`scale <class_Control_property_scale>` and :ref:`rotation <class_Control_property_rotation>` around a :ref:`pivot point <class_Control_property_pivot_offset>`."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:90
msgid "For *Node2D* nodes :ref:`transform <class_Node2D_property_transform>` consists of :ref:`position <class_Node2D_property_position>`, :ref:`rotation <class_Node2D_property_rotation>`, :ref:`scale <class_Node2D_property_scale>` and :ref:`skew <class_Node2D_property_skew>`."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:94
msgid "The transform affects the item itself and usually also child-*CanvasItems* and in the case of a *SubViewportContainer* it affects the contained *SubViewport*."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:100
msgid "**CanvasLayer transform**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:98
msgid "The *CanvasLayer's* :ref:`transform <class_CanvasLayer_property_transform>` affects all *CanvasItems* within the *CanvasLayer*. It doesn't affect other *CanvasLayers* or *Windows* in its *Viewport*."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:107
msgid "**CanvasLayer follow viewport transform**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:103
msgid "The *follow viewport transform* is an automatically calculated transform, that is based on the *Viewport's* :ref:`canvas transform <class_Viewport_property_canvas_transform>` and the *CanvasLayer's* :ref:`follow viewport scale <class_CanvasLayer_property_follow_viewport_scale>` and can be used, if :ref:`enabled <class_CanvasLayer_property_follow_viewport_enabled>`, to achieve a pseudo 3D effect. It affects the same child nodes as the *CanvasLayer transform*."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:113
msgid "**Viewport canvas transform**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:110
msgid "The :ref:`canvas transform <class_Viewport_property_canvas_transform>` affects all *CanvasItems* in the *Viewport's* default canvas. It also affects *CanvasLayers*, that have follow viewport transform enabled. The *Viewport's* active :ref:`Camera2D <class_Camera2D>` works by changing this transform. It doesn't affect this *Viewport's* embedded *Windows*."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:118
msgid "**Viewport global canvas transform**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:116
msgid "*Viewports* also have a :ref:`global canvas transform <class_Viewport_property_global_canvas_transform>`. This is the master transform and affects all individual *Canvas Layer* and embedded *Window* transforms. This is primarily used in Godot's CanvasItem Editor."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:129
msgid "**Viewport stretch transform**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:121
msgid "Finally, *Viewports* have a *stretch transform*, which is used when resizing or stretching the viewport. This transform is used for :ref:`Windows <class_Window>` as described in :ref:`doc_multiple_resolutions`, but can also be manually set on *SubViewports* by means of :ref:`size <class_SubViewport_property_size>` and :ref:`size_2d_override <class_SubViewport_property_size_2d_override>`. It's :ref:`translation <class_Transform2D_method_get_origin>`, :ref:`rotation <class_Transform2D_method_get_rotation>` and :ref:`skew <class_Transform2D_method_get_skew>` are the default values and it can only have non-default :ref:`scale <class_Transform2D_method_get_scale>`."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:135
msgid "**Window transform**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:132
msgid "In order to scale and position the *Window's* content as described in :ref:`doc_multiple_resolutions`, each :ref:`Window <class_Window>` contains a *window transform*. It is for example responsible for the black bars at the *Window's* sides so that the *Viewport* is displayed with a fixed aspect ratio."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:139
msgid "**Window position**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:138
msgid "Every *Window* also has a :ref:`position <class_Window_property_position>` to describe its position within its embedder. The embedder can be another *Viewport* or the OS Window Manager."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:146
msgid "**SubViewportContainer shrink transform**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/2d_coordinate_systems.rst:142
msgid ":ref:`stretch <class_SubViewportContainer_property_stretch>` together with :ref:`stretch_shrink <class_SubViewportContainer_property_stretch_shrink>` declare for a *SubViewportContaner* if and by what integer factor the contained *SubViewport* should be scaled in comparison to the container's size."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,87 +16,87 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/binding_to_external_libraries.rst:4
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:4
msgid "Binding to external libraries"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:7
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:7
msgid "Modules"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:9
msgid "The Summator example in :ref:`doc_custom_modules_in_c++` is great for small, custom modules, but what if you want to use a larger, external library? Let's look at an example using `Festival <http://www.cstr.ed.ac.uk/projects/festival/>`_, a speech synthesis (text-to-speech) library written in C++."
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:9
msgid "The Summator example in :ref:`doc_custom_modules_in_cpp` is great for small, custom modules, but what if you want to use a larger, external library? Let's look at an example using `Festival <https://www.cstr.ed.ac.uk/projects/festival/>`_, a speech synthesis (text-to-speech) library written in C++."
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:14
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:14
msgid "To bind to an external library, set up a module directory similar to the Summator example:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:20
msgid "Next, you will create a header file with a simple TTS class:"
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:20
msgid "Next, you will create a header file with a TTS class:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:45
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:45
msgid "And then you'll add the cpp file."
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:70
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:70
msgid "Just as before, the new class needs to be registered somehow, so two more files need to be created:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:79
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:79
msgid "These files must be in the top-level folder of your module (next to your ``SCsub`` and ``config.py`` files) for the module to be registered properly."
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:82
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:82
msgid "These files should contain the following:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:109
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:109
msgid "Next, you need to create a ``SCsub`` file so the build system compiles this module:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:121
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:121
msgid "You'll need to install the external library on your machine to get the .a library files. See the library's official documentation for specific instructions on how to do this for your operation system. We've included the installation commands for Linux below, for reference."
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:132
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:132
msgid "The voices that Festival uses (and any other potential external/3rd-party resource) all have varying licenses and terms of use; some (if not most) of them may be be problematic with Godot, even if the Festival Library itself is MIT License compatible. Please be sure to check the licenses and terms of use."
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:137
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:137
msgid "The external library will also need to be installed inside your module to make the source files accessible to the compiler, while also keeping the module code self-contained. The festival and speech_tools libraries can be installed from the modules/tts/ directory via git using the following commands:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:147
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:147
msgid "If you don't want the external repository source files committed to your repository, you can link to them instead by adding them as submodules (from within the modules/tts/ directory), as seen below:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:156
msgid "Please note that Git submodules are not used in the Godot repository. If you are developing a module to be merged into the main Godot repository, you should not use submodules. If your module doesn't get merged in, you can always try to implement the external library as a GDNative C++ plugin."
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:156
msgid "Please note that Git submodules are not used in the Godot repository. If you are developing a module to be merged into the main Godot repository, you should not use submodules. If your module doesn't get merged in, you can always try to implement the external library as a GDExtension."
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:161
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:161
msgid "To add include directories for the compiler to look at you can append it to the environment's paths:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:181
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:181
msgid "If you want to add custom compiler flags when building your module, you need to clone `env` first, so it won't add those flags to whole Godot build (which can cause errors). Example `SCsub` with custom flags:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:199
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:199
msgid "The final module should look like this:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:217
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:217
msgid "Using the module"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:219
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:219
msgid "You can now use your newly created module from any script:"
msgstr ""
#: ../../docs/development/cpp/binding_to_external_libraries.rst:228
#: ../../docs/contributing/development/core_and_modules/binding_to_external_libraries.rst:228
msgid "And the output will be ``is_spoken: True`` if the text is spoken."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,144 +16,144 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:4
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:4
msgid "Common engine methods and macros"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:6
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:6
msgid "Godot's C++ codebase makes use of dozens of custom methods and macros which are used in almost every file. This page is geared towards beginner contributors, but it can also be useful for those writing custom C++ modules."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:11
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:11
msgid "Print text"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:31
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:42
msgid "If you need to add placeholders in your messages, use format strings as described below."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:35
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:46
msgid "Format a string"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:37
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:48
msgid "The ``vformat()`` function returns a formatted :ref:`class_String`. It behaves in a way similar to C's ``sprintf()``:"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:51
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:62
msgid "In most cases, try to use ``vformat()`` instead of string concatenation as it makes for more readable code."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:55
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:66
msgid "Convert an integer or float to a string"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:57
msgid "This is mainly useful when printing numbers directly."
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:68
msgid "This is not needed when printing numbers using ``print_line()``, but you may still need to perform manual conversion for some other use cases."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:68
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:80
msgid "Internationalize a string"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:70
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:82
msgid "There are two types of internationalization in Godot's codebase:"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:72
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:84
msgid "``TTR()``: **Editor (\"tools\") translations** will only be processed in the editor. If a user uses the same text in one of their projects, it won't be translated if they provide a translation for it. When contributing to the engine, this is generally the macro you should use for localizable strings."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:76
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:88
msgid "``RTR()``: **Run-time translations** will be automatically localized in projects if they provide a translation for the given string. This kind of translation shouldn't be used in editor-only code."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:87
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:99
msgid "To insert placeholders in localizable strings, wrap the localization macro in a ``vformat()`` call as follows:"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:97
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:109
msgid "When using ``vformat()`` and a translation macro together, always wrap the translation macro in ``vformat()``, not the other way around. Otherwise, the string will never match the translation as it will have the placeholder already replaced when it's passed to TranslationServer."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:103
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:115
msgid "Clamp a value"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:105
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:117
msgid "Godot provides macros for clamping a value with a lower bound (``MAX``), an upper bound (``MIN``) or both (``CLAMP``):"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:117
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:129
msgid "This works with any type that can be compared to other values (like ``int`` and ``float``)."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:121
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:133
msgid "Microbenchmarking"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:123
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:135
msgid "If you want to benchmark a piece of code but don't know how to use a profiler, use this snippet:"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:135
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:147
msgid "This will print the time spent between the ``begin`` declaration and the ``end`` declaration."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:140
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:152
msgid "You may have to ``#include \"core/os/os.h\"`` if it's not present already."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:142
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:154
msgid "When opening a pull request, make sure to remove this snippet as well as the include if it wasn't there previously."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:146
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:158
msgid "Get project/editor settings"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:148
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:160
msgid "There are four macros available for this:"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:160
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:172
msgid "If a default value has been specified elsewhere, don't specify it again to avoid repetition:"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:170
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:182
msgid "It's recommended to use ``GLOBAL_DEF``/``EDITOR_DEF`` only once per setting and use ``GLOBAL_GET``/``EDITOR_GET`` in all other places where it's referenced."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:174
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:186
msgid "Error macros"
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:176
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:188
msgid "Godot features many error macros to make error reporting more convenient."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:180
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:192
msgid "Conditions in error macros work in the **opposite** way of GDScript's built-in ``assert()`` function. An error is reached if the condition inside evaluates to ``true``, not ``false``."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:186
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:198
msgid "Only variants with custom messages are documented here, as these should always be used in new contributions. Make sure the custom message provided includes enough information for people to diagnose the issue, even if they don't know C++. In case a method was passed invalid arguments, you can print the invalid value in question to ease debugging."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:192
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:204
msgid "For internal error checking where displaying a human-readable message isn't necessary, remove ``_MSG`` at the end of the macro name and don't supply a message argument."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:196
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:208
msgid "Also, always try to return processable data so the engine can keep running well."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:240
msgid "See `core/error_macros.h <https://github.com/godotengine/godot/blob/3.x/core/error_macros.h>`__ in Godot's codebase for more information about each error macro."
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:252
msgid "See `core/error/error_macros.h <https://github.com/godotengine/godot/blob/master/core/error/error_macros.h>`__ in Godot's codebase for more information about each error macro."
msgstr ""
#: ../../docs/development/cpp/common_engine_methods_and_macros.rst:243
msgid "Some functions return an error code (materialized by a return type of ``Error``). This value can be returned directly from an error macro. See the list of available error codes in `core/error_list.h <https://github.com/godotengine/godot/blob/3.x/core/error_list.h>`__."
#: ../../docs/contributing/development/core_and_modules/common_engine_methods_and_macros.rst:255
msgid "Some functions return an error code (materialized by a return type of ``Error``). This value can be returned directly from an error macro. See the list of available error codes in `core/error/error_list.h <https://github.com/godotengine/godot/blob/master/core/error/error_list.h>`__."
msgstr ""
#: ../../docs/<rst_epilog>:0

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,243 +16,243 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/core_types.rst:4
#: ../../docs/contributing/development/core_and_modules/core_types.rst:4
msgid "Core types"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:6
#: ../../docs/contributing/development/core_and_modules/core_types.rst:6
msgid "Godot has a rich set of classes and templates that compose its core, and everything is built upon them."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:9
#: ../../docs/contributing/development/core_and_modules/core_types.rst:9
msgid "This reference will try to list them in order for their better understanding."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:13
#: ../../docs/contributing/development/core_and_modules/core_types.rst:13
msgid "Definitions"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:15
#: ../../docs/contributing/development/core_and_modules/core_types.rst:15
msgid "Godot uses the standard C99 datatypes, such as ``uint8_t``, ``uint32_t``, ``int64_t``, etc. which are nowadays supported by every compiler. Reinventing the wheel for those is not fun, as it makes code more difficult to read."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:20
#: ../../docs/contributing/development/core_and_modules/core_types.rst:20
msgid "In general, care is not taken to use the most efficient datatype for a given task unless using large structures or arrays. ``int`` is used through most of the code unless necessary. This is done because nowadays every device has at least a 32 bits bus and can do such operations in one cycle. It makes code more readable too."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:26
#: ../../docs/contributing/development/core_and_modules/core_types.rst:26
msgid "For files or memory sizes, ``size_t`` is used, which is warranted to be 64 bits."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:29
#: ../../docs/contributing/development/core_and_modules/core_types.rst:29
msgid "For Unicode characters, CharType instead of wchar_t is used, because many architectures have 4 bytes long wchar_t, where 2 bytes might be desired. However, by default, this has not been forced and CharType maps directly to wchar_t."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:35
#: ../../docs/development/cpp/core_types.rst:132
#: ../../docs/development/cpp/core_types.rst:166
#: ../../docs/development/cpp/core_types.rst:182
#: ../../docs/development/cpp/core_types.rst:198
#: ../../docs/development/cpp/core_types.rst:209
#: ../../docs/development/cpp/core_types.rst:220
#: ../../docs/development/cpp/core_types.rst:233
#: ../../docs/contributing/development/core_and_modules/core_types.rst:35
#: ../../docs/contributing/development/core_and_modules/core_types.rst:132
#: ../../docs/contributing/development/core_and_modules/core_types.rst:166
#: ../../docs/contributing/development/core_and_modules/core_types.rst:182
#: ../../docs/contributing/development/core_and_modules/core_types.rst:198
#: ../../docs/contributing/development/core_and_modules/core_types.rst:209
#: ../../docs/contributing/development/core_and_modules/core_types.rst:220
#: ../../docs/contributing/development/core_and_modules/core_types.rst:233
msgid "References:"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:37
msgid "`core/typedefs.h <https://github.com/godotengine/godot/blob/3.x/core/typedefs.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:37
msgid "`core/typedefs.h <https://github.com/godotengine/godot/blob/master/core/typedefs.h>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:40
#: ../../docs/contributing/development/core_and_modules/core_types.rst:40
msgid "Memory model"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:42
#: ../../docs/contributing/development/core_and_modules/core_types.rst:42
msgid "PC is a wonderful architecture. Computers often have gigabytes of RAM, terabytes of storage and gigahertz of CPU, and when an application needs more resources the OS will swap out the inactive ones. Other architectures (like mobile or consoles) are in general more limited."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:47
#: ../../docs/contributing/development/core_and_modules/core_types.rst:47
msgid "The most common memory model is the heap, where an application will request a region of memory, and the underlying OS will try to fit it somewhere and return it. This often works best and is flexible, but over time and with abuse, this can lead to segmentation."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:52
#: ../../docs/contributing/development/core_and_modules/core_types.rst:52
msgid "Segmentation slowly creates holes that are too small for most common allocations, so that memory is wasted. There is a lot of literature about heap and segmentation, so this topic will not be developed further here. Modern operating systems use paged memory, which helps mitigate the problem of segmentation but doesn't solve it."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:58
#: ../../docs/contributing/development/core_and_modules/core_types.rst:58
msgid "However, in many studies and tests, it is shown that given enough memory, if the maximum allocation size is below a given threshold in proportion to the maximum heap size and proportion of memory intended to be unused, segmentation will not be a problem over time as it will remain constant. In other words, leave 10-20% of your memory free and perform all small allocations and you are fine."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:65
#: ../../docs/contributing/development/core_and_modules/core_types.rst:65
msgid "Godot ensures that all objects that can be allocated dynamically are small (less than a few kb at most). But what happens if an allocation is too large (like an image or mesh geometry or large array)? In this case Godot has the option to use a dynamic memory pool. This memory needs to be locked to be accessed, and if an allocation runs out of memory, the pool will be rearranged and compacted on demand. Depending on the need of the game, the programmer can configure the dynamic memory pool size."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:74
#: ../../docs/contributing/development/core_and_modules/core_types.rst:74
msgid "Allocating memory"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:76
#: ../../docs/contributing/development/core_and_modules/core_types.rst:76
msgid "Godot has many tools for tracking memory usage in a game, especially during debug. Because of this, the regular C and C++ library calls should not be used. Instead, a few other ones are provided."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:80
#: ../../docs/contributing/development/core_and_modules/core_types.rst:80
msgid "For C-style allocation, Godot provides a few macros:"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:88
#: ../../docs/contributing/development/core_and_modules/core_types.rst:88
msgid "These are equivalent to the usual malloc, realloc, free of the standard C library."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:91
#: ../../docs/contributing/development/core_and_modules/core_types.rst:91
msgid "For C++-style allocation, special macros are provided:"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:101
#: ../../docs/contributing/development/core_and_modules/core_types.rst:101
msgid "which are equivalent to new, delete, new[] and delete[]."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:103
#: ../../docs/contributing/development/core_and_modules/core_types.rst:103
msgid "memnew/memdelete also use a little C++ magic and notify Objects right after they are created, and right before they are deleted."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:106
#: ../../docs/contributing/development/core_and_modules/core_types.rst:106
msgid "For dynamic memory, the PoolVector<> template is provided. PoolVector is a standard vector class, and is very similar to vector in the C++ standard library. To create a PoolVector buffer, use this:"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:114
#: ../../docs/contributing/development/core_and_modules/core_types.rst:114
msgid "PoolVector can be accessed using the [] operator and a few helpers exist for this:"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:126
#: ../../docs/contributing/development/core_and_modules/core_types.rst:126
msgid "These operations allow fast read/write from PoolVectors and keep it locked until they go out of scope. However, PoolVectors should be used for small, dynamic memory operations, as read() and write() are too slow for a large amount of accesses."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:134
msgid "`core/os/memory.h <https://github.com/godotengine/godot/blob/3.x/core/os/memory.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:134
msgid "`core/os/memory.h <https://github.com/godotengine/godot/blob/master/core/os/memory.h>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:135
msgid "`core/pool_vector.h <https://github.com/godotengine/godot/blob/3.x/core/pool_vector.cpp>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:135
msgid "`core/pool_vector.h <https://github.com/godotengine/godot/blob/master/core/pool_vector.cpp>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:138
#: ../../docs/contributing/development/core_and_modules/core_types.rst:138
msgid "Containers"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:140
#: ../../docs/contributing/development/core_and_modules/core_types.rst:140
msgid "Godot provides also a set of common containers:"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:142
#: ../../docs/contributing/development/core_and_modules/core_types.rst:142
msgid "Vector"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:143
#: ../../docs/contributing/development/core_and_modules/core_types.rst:143
msgid "List"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:144
#: ../../docs/contributing/development/core_and_modules/core_types.rst:144
msgid "Set"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:145
#: ../../docs/contributing/development/core_and_modules/core_types.rst:145
msgid "Map"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:147
msgid "They are simple and aim to be as minimal as possible, as templates in C++ are often inlined and make the binary size much fatter, both in debug symbols and code. List, Set and Map can be iterated using pointers, like this:"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:147
msgid "They aim to be as minimal as possible, as templates in C++ are often inlined and make the binary size much fatter, both in debug symbols and code. List, Set and Map can be iterated using pointers, like this:"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:158
#: ../../docs/contributing/development/core_and_modules/core_types.rst:158
msgid "The Vector<> class also has a few nice features:"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:160
#: ../../docs/contributing/development/core_and_modules/core_types.rst:160
msgid "It does copy on write, so making copies of it is cheap as long as they are not modified."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:162
#: ../../docs/contributing/development/core_and_modules/core_types.rst:162
msgid "It supports multi-threading, by using atomic operations on the reference counter."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:168
msgid "`core/vector.h <https://github.com/godotengine/godot/blob/3.x/core/vector.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:168
msgid "`core/templates/vector.h <https://github.com/godotengine/godot/blob/master/core/templates/vector.h>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:169
msgid "`core/list.h <https://github.com/godotengine/godot/blob/3.x/core/list.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:169
msgid "`core/templates/list.h <https://github.com/godotengine/godot/blob/master/core/templates/list.h>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:170
msgid "`core/set.h <https://github.com/godotengine/godot/blob/3.x/core/set.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:170
msgid "`core/templates/set.h <https://github.com/godotengine/godot/blob/master/core/templates/hash_set.h>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:171
msgid "`core/map.h <https://github.com/godotengine/godot/blob/3.x/core/map.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:171
msgid "`core/templates/map.h <https://github.com/godotengine/godot/blob/master/core/templates/hash_map.h>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:174
#: ../../docs/contributing/development/core_and_modules/core_types.rst:174
msgid "String"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:176
#: ../../docs/contributing/development/core_and_modules/core_types.rst:176
msgid "Godot also provides a String class. This class has a huge amount of features, full Unicode support in all the functions (like case operations) and utf8 parsing/extracting, as well as helpers for conversion and visualization."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:184
msgid "`core/ustring.h <https://github.com/godotengine/godot/blob/3.x/core/ustring.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:184
msgid "`core/string/ustring.h <https://github.com/godotengine/godot/blob/master/core/string/ustring.h>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:187
#: ../../docs/contributing/development/core_and_modules/core_types.rst:187
msgid "StringName"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:189
#: ../../docs/contributing/development/core_and_modules/core_types.rst:189
msgid "StringNames are like a String, but they are unique. Creating a StringName from a string results in a unique internal pointer for all equal strings. StringNames are useful for using strings as identifier, as comparing them is basically comparing a pointer."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:194
#: ../../docs/contributing/development/core_and_modules/core_types.rst:194
msgid "Creation of a StringName (especially a new one) is slow, but comparison is fast."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:200
msgid "`core/string_name.h <https://github.com/godotengine/godot/blob/3.x/core/string_name.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:200
msgid "`core/string/string_name.h <https://github.com/godotengine/godot/blob/master/core/string/string_name.h>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:203
#: ../../docs/contributing/development/core_and_modules/core_types.rst:203
msgid "Math types"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:205
#: ../../docs/contributing/development/core_and_modules/core_types.rst:205
msgid "There are several linear math types available in the core/math directory."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:211
msgid "`core/math <https://github.com/godotengine/godot/tree/3.x/core/math>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:211
msgid "`core/math <https://github.com/godotengine/godot/tree/master/core/math>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:214
#: ../../docs/contributing/development/core_and_modules/core_types.rst:214
msgid "NodePath"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:216
#: ../../docs/contributing/development/core_and_modules/core_types.rst:216
msgid "This is a special datatype used for storing paths in a scene tree and referencing them fast."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:222
msgid "`core/node_path.h <https://github.com/godotengine/godot/blob/3.x/core/node_path.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:222
msgid "`core/string/node_path.h <https://github.com/godotengine/godot/blob/master/core/string/node_path.h>`__"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:225
#: ../../docs/contributing/development/core_and_modules/core_types.rst:225
msgid "RID"
msgstr ""
#: ../../docs/development/cpp/core_types.rst:227
#: ../../docs/contributing/development/core_and_modules/core_types.rst:227
msgid "RIDs are resource IDs. Servers use these to reference data stored in them. RIDs are opaque, meaning that the data they reference can't be accessed directly. RIDs are unique, even for different types of referenced data."
msgstr ""
#: ../../docs/development/cpp/core_types.rst:235
msgid "`core/rid.h <https://github.com/godotengine/godot/blob/3.x/core/rid.h>`__"
#: ../../docs/contributing/development/core_and_modules/core_types.rst:235
msgid "`core/templates/rid.h <https://github.com/godotengine/godot/blob/master/core/templates/rid.h>`__"
msgstr ""
#: ../../docs/<rst_epilog>:0

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,96 +16,96 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/custom_audiostreams.rst:4
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:4
msgid "Custom AudioStreams"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:7
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:7
msgid "Introduction"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:9
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:9
msgid "AudioStream is the base class of all audio emitting objects. AudioStreamPlayer binds onto an AudioStream to emit PCM data into an AudioServer which manages audio drivers."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:13
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:13
msgid "All audio resources require two audio based classes: AudioStream and AudioStreamPlayback. As a data container, AudioStream contains the resource and exposes itself to GDScript. AudioStream references its own internal custom AudioStreamPlayback which translates AudioStream into PCM data."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:19
msgid "This guide assumes the reader knows how to create C++ modules. If not, refer to this guide :ref:`doc_custom_modules_in_c++`."
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:19
msgid "This guide assumes the reader knows how to create C++ modules. If not, refer to this guide :ref:`doc_custom_modules_in_cpp`."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:23
#: ../../docs/development/cpp/custom_audiostreams.rst:117
#: ../../docs/development/cpp/custom_audiostreams.rst:348
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:23
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:117
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:348
msgid "References:"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:25
#: ../../docs/development/cpp/custom_audiostreams.rst:119
#: ../../docs/development/cpp/custom_audiostreams.rst:350
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:25
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:119
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:350
msgid "`servers/audio/audio_stream.h <https://github.com/godotengine/godot/blob/master/servers/audio/audio_stream.h>`__"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:26
#: ../../docs/development/cpp/custom_audiostreams.rst:351
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:26
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:351
msgid "`scene/audio/audioplayer.cpp <https://github.com/godotengine/godot/blob/master/scene/audio/audio_player.cpp>`__"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:29
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:29
msgid "What for?"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:31
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:31
msgid "Binding external libraries (like Wwise, FMOD, etc)."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:32
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:32
msgid "Adding custom audio queues"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:33
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:33
msgid "Adding support for more audio formats"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:36
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:36
msgid "Create an AudioStream"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:38
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:38
msgid "An AudioStream consists of three components: data container, stream name, and an AudioStreamPlayback friend class generator. Audio data can be loaded in a number of ways such as with an internal counter for a tone generator, internal/external buffer, or a file reference."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:43
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:43
msgid "Some AudioStreams need to be stateless such as objects loaded from ResourceLoader. ResourceLoader loads once and references the same object regardless how many times ``load`` is called on a specific resource. Therefore, playback state must be self-contained in AudioStreamPlayback."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:123
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:123
msgid "Create an AudioStreamPlayback"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:125
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:125
msgid "AudioStreamPlayer uses ``mix`` callback to obtain PCM data. The callback must match sample rate and fill the buffer."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:127
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:127
msgid "Since AudioStreamPlayback is controlled by the audio thread, i/o and dynamic memory allocation are forbidden."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:232
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:232
msgid "Resampling"
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:234
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:234
msgid "Godot's AudioServer currently uses 44100 Hz sample rate. When other sample rates are needed such as 48000, either provide one or use AudioStreamPlaybackResampled. Godot provides cubic interpolation for audio resampling."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:238
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:238
msgid "Instead of overloading ``mix``, AudioStreamPlaybackResampled uses ``_mix_internal`` to query AudioFrames and ``get_stream_sampling_rate`` to query current mix rate."
msgstr ""
#: ../../docs/development/cpp/custom_audiostreams.rst:349
#: ../../docs/contributing/development/core_and_modules/custom_audiostreams.rst:349
msgid "`core/math/audio_frame.h <https://github.com/godotengine/godot/blob/master/core/math/audio_frame.h>`__"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,160 +16,160 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/custom_godot_servers.rst:4
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:4
msgid "Custom Godot servers"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:7
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:7
msgid "Introduction"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:9
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:9
msgid "Godot implements multi-threading as servers. Servers are daemons which manage data, process it, and push the result. Servers implement the mediator pattern which interprets resource ID and process data for the engine and other modules. In addition, the server claims ownership for its RID allocations."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:15
msgid "This guide assumes the reader knows how to create C++ modules and Godot data types. If not, refer to :ref:`doc_custom_modules_in_c++`."
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:15
msgid "This guide assumes the reader knows how to create C++ modules and Godot data types. If not, refer to :ref:`doc_custom_modules_in_cpp`."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:19
#: ../../docs/development/cpp/custom_godot_servers.rst:316
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:19
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:312
msgid "References"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:21
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:21
msgid "`Why does Godot use servers and RIDs? <https://godotengine.org/article/why-does-godot-use-servers-and-rids>`__"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:22
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:22
msgid "`Singleton pattern <https://en.wikipedia.org/wiki/Singleton_pattern>`__"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:23
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:23
msgid "`Mediator pattern <https://en.wikipedia.org/wiki/Mediator_pattern>`__"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:26
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:26
msgid "What for?"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:28
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:28
msgid "Adding artificial intelligence."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:29
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:29
msgid "Adding custom asynchronous threads."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:30
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:30
msgid "Adding support for a new input device."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:31
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:31
msgid "Adding writing threads."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:32
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:32
msgid "Adding a custom VoIP protocol."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:33
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:33
msgid "And more..."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:36
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:36
msgid "Creating a Godot server"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:38
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:38
msgid "At minimum, a server must have a static instance, a sleep timer, a thread loop, an initialization state and a cleanup procedure."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:274
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:270
msgid "Custom managed resource data"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:276
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:272
msgid "Godot servers implement a mediator pattern. All data types inherit ``RID_Data``. ``RID_Owner<MyRID_Data>`` owns the object when ``make_rid`` is called. During debug mode only, RID_Owner maintains a list of RIDs. In practice, RIDs are similar to writing object-oriented C code."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:318
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:314
msgid ":ref:`RID<class_rid>`"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:319
msgid "`core/rid.h <https://github.com/godotengine/godot/blob/3.x/core/rid.h>`__"
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:315
msgid "`core/templates/rid.h <https://github.com/godotengine/godot/blob/master/core/templates/rid.h>`__"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:322
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:318
msgid "Registering the class in GDScript"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:324
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:320
msgid "Servers are allocated in ``register_types.cpp``. The constructor sets the static instance and ``init()`` creates the managed thread; ``unregister_types.cpp`` cleans up the server."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:328
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:324
msgid "Since a Godot server class creates an instance and binds it to a static singleton, binding the class might not reference the correct instance. Therefore, a dummy class must be created to reference the proper Godot server."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:332
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:328
msgid "In ``register_server_types()``, ``Engine::get_singleton()->add_singleton`` is used to register the dummy class in GDScript."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:376
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:372
msgid "`servers/register_server_types.cpp <https://github.com/godotengine/godot/blob/master/servers/register_server_types.cpp>`__"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:379
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:375
msgid "Bind methods"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:381
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:377
msgid "The dummy class binds singleton methods to GDScript. In most cases, the dummy class methods wraps around."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:389
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:385
msgid "Binding Signals"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:391
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:387
msgid "It is possible to emit signals to GDScript by calling the GDScript dummy object."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:466
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:462
msgid "MessageQueue"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:468
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:464
msgid "In order to send commands into SceneTree, MessageQueue is a thread-safe buffer to queue set and call methods for other threads. To queue a command, obtain the target object RID and use either ``push_call``, ``push_set``, or ``push_notification`` to execute the desired behavior. The queue will be flushed whenever either ``SceneTree::idle`` or ``SceneTree::iteration`` is executed."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:475
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:471
msgid "References:"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:477
msgid "`core/message_queue.cpp <https://github.com/godotengine/godot/blob/3.x/core/message_queue.cpp>`__"
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:473
msgid "`core/object/message_queue.cpp <https://github.com/godotengine/godot/blob/master/core/object/message_queue.cpp>`__"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:480
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:476
msgid "Summing it up"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:482
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:478
msgid "Here is the GDScript sample code:"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:506
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:502
msgid "Notes"
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:508
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:504
msgid "The actual `Hilbert Hotel <https://en.wikipedia.org/wiki/Hilbert%27s_paradox_of_the_Grand_Hotel>`__ is impossible."
msgstr ""
#: ../../docs/development/cpp/custom_godot_servers.rst:509
#: ../../docs/contributing/development/core_and_modules/custom_godot_servers.rst:505
msgid "Connecting signal example code is pretty hacky."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,359 +16,423 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:4
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:4
msgid "Custom modules in C++"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:7
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:7
msgid "Modules"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:9
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:9
msgid "Godot allows extending the engine in a modular way. New modules can be created and then enabled/disabled. This allows for adding new engine functionality at every level without modifying the core, which can be split for use and reuse in different modules."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:14
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:14
msgid "Modules are located in the ``modules/`` subdirectory of the build system. By default, dozens of modules are enabled, such as GDScript (which, yes, is not part of the base engine), the Mono runtime, a regular expressions module, and others. As many new modules as desired can be created and combined. The SCons build system will take care of it transparently."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:22
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:22
msgid "What for?"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:24
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:24
msgid "While it's recommended that most of a game be written in scripting (as it is an enormous time saver), it's perfectly possible to use C++ instead. Adding C++ modules can be useful in the following scenarios:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:28
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:28
msgid "Binding an external library to Godot (like PhysX, FMOD, etc)."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:29
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:29
msgid "Optimize critical parts of a game."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:30
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:30
msgid "Adding new functionality to the engine and/or editor."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:31
msgid "Porting an existing game."
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:31
msgid "Porting an existing game to Godot."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:32
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:32
msgid "Write a whole, new game in C++ because you can't live without C++."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:35
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:35
msgid "Creating a new module"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:37
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:37
msgid "Before creating a module, make sure to :ref:`download the source code of Godot and compile it <toc-devel-compiling>`."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:40
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:40
msgid "To create a new module, the first step is creating a directory inside ``modules/``. If you want to maintain the module separately, you can checkout a different VCS into modules and use it."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:44
msgid "The example module will be called \"summator\" (``godot/modules/summator``). Inside we will create a simple summator class:"
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:44
msgid "The example module will be called \"summator\" (``godot/modules/summator``). Inside we will create a summator class:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:74
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:74
msgid "And then the cpp file."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:104
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:104
msgid "Then, the new class needs to be registered somehow, so two more files need to be created:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:113
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:113
msgid "These files must be in the top-level folder of your module (next to your ``SCsub`` and ``config.py`` files) for the module to be registered properly."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:116
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:116
msgid "These files should contain the following:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:143
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:151
msgid "Next, we need to create a ``SCsub`` file so the build system compiles this module:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:154
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:162
msgid "With multiple sources, you can also add each file individually to a Python string list:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:162
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:170
msgid "This allows for powerful possibilities using Python to construct the file list using loops and logic statements. Look at some modules that ship with Godot by default for examples."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:166
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:174
msgid "To add include directories for the compiler to look at you can append it to the environment's paths:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:174
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:182
msgid "If you want to add custom compiler flags when building your module, you need to clone ``env`` first, so it won't add those flags to whole Godot build (which can cause errors). Example ``SCsub`` with custom flags:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:192
msgid "And finally, the configuration file for the module, this is a simple python script that must be named ``config.py``:"
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:200
msgid "And finally, the configuration file for the module, this is a Python script that must be named ``config.py``:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:205
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:213
msgid "The module is asked if it's OK to build for the specific platform (in this case, ``True`` means it will build for every platform)."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:208
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:216
msgid "And that's it. Hope it was not too complex! Your module should look like this:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:220
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:228
msgid "You can then zip it and share the module with everyone else. When building for every platform (instructions in the previous sections), your module will be included."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:224
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:232
msgid "There is a parameter limit of 5 in C++ modules for things such as subclasses. This can be raised to 13 by including the header file ``core/method_bind_ext.gen.inc``."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:229
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:237
msgid "Using the module"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:231
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:239
msgid "You can now use your newly created module from any script:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:243
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:251
msgid "The output will be ``60``."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:245
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:253
msgid "The previous Summator example is great for small, custom modules, but what if you want to use a larger, external library? Refer to :ref:`doc_binding_to_external_libraries` for details about binding to external libraries."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:250
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:258
msgid "If your module is meant to be accessed from the running project (not just from the editor), you must also recompile every export template you plan to use, then specify the path to the custom template in each export preset. Otherwise, you'll get errors when running the project as the module isn't compiled in the export template. See the :ref:`Compiling <toc-devel-compiling>` pages for more information."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:259
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:267
msgid "Compiling a module externally"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:261
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:269
msgid "Compiling a module involves moving the module's sources directly under the engine's ``modules/`` directory. While this is the most straightforward way to compile a module, there are a couple of reasons as to why this might not be a practical thing to do:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:266
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:274
msgid "Having to manually copy modules sources every time you want to compile the engine with or without the module, or taking additional steps needed to manually disable a module during compilation with a build option similar to ``module_summator_enabled=no``. Creating symbolic links may also be a solution, but you may additionally need to overcome OS restrictions like needing the symbolic link privilege if doing this via script."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:273
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:281
msgid "Depending on whether you have to work with the engine's source code, the module files added directly to ``modules/`` changes the working tree to the point where using a VCS (like ``git``) proves to be cumbersome as you need to make sure that only the engine-related code is committed by filtering changes."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:279
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:287
msgid "So if you feel like the independent structure of custom modules is needed, lets take our \"summator\" module and move it to the engine's parent directory:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:287
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:295
msgid "Compile the engine with our module by providing ``custom_modules`` build option which accepts a comma-separated list of directory paths containing custom C++ modules, similar to the following:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:295
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:303
msgid "The build system shall detect all modules under the ``../modules`` directory and compile them accordingly, including our \"summator\" module."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:300
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:308
msgid "Any path passed to ``custom_modules`` will be converted to an absolute path internally as a way to distinguish between custom and built-in modules. It means that things like generating module documentation may rely on a specific path structure on your machine."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:307
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:315
msgid ":ref:`Introduction to the buildsystem - Custom modules build option <doc_buildsystem_custom_modules>`."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:310
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:318
msgid "Customizing module types initialization"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:320
msgid "Modules can interact with other built-in engine classes during runtime and even affect the way core types are initialized. So far, we've been using ``register_summator_types`` as a way to bring in module classes to be available within the engine."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:325
msgid "A crude order of the engine setup can be summarized as a list of the following type registration methods:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:344
msgid "Our ``Summator`` class is initialized during the ``register_module_types()`` call. Imagine that we need to satisfy some common module run-time dependency (like singletons), or allow us to override existing engine method callbacks before they can be assigned by the engine itself. In that case, we want to ensure that our module classes are registered *before* any other built-in type."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:350
msgid "This is where we can define an optional ``preregister_summator_types()`` method which will be called before anything else during the ``preregister_module_types()`` engine setup stage."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:354
msgid "We now need to add this method to ``register_types`` header and source files:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:366
msgid "Unlike other register methods, we have to explicitly define ``MODULE_SUMMATOR_HAS_PREREGISTER`` to let the build system know what relevant method calls to include at compile time. The module's name has to be converted to uppercase as well."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:394
msgid "Improving the build system for development"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:314
msgid "This shared library support is not designed to support distributing a module to other users without recompiling the engine. For that purpose, use :ref:`GDNative <doc_what_is_gdnative>` instead."
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:398
msgid "This shared library support is not designed to support distributing a module to other users without recompiling the engine. For that purpose, use a GDExtension instead."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:318
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:402
msgid "So far, we defined a clean SCsub that allows us to add the sources of our new module as part of the Godot binary."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:321
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:405
msgid "This static approach is fine when we want to build a release version of our game, given we want all the modules in a single binary."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:324
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:408
msgid "However, the trade-off is that every single change requires a full recompilation of the game. Even though SCons is able to detect and recompile only the file that was changed, finding such files and eventually linking the final binary takes a long time."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:328
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:412
msgid "The solution to avoid such a cost is to build our own module as a shared library that will be dynamically loaded when starting our game's binary."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:369
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:453
msgid "Once compiled, we should end up with a ``bin`` directory containing both the ``godot*`` binary and our ``libsummator*.so``. However given the .so is not in a standard directory (like ``/usr/lib``), we have to help our binary find it during runtime with the ``LD_LIBRARY_PATH`` environment variable:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:380
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:464
msgid "You have to ``export`` the environment variable. Otherwise, you won't be able to run your project from the editor."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:383
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:467
msgid "On top of that, it would be nice to be able to select whether to compile our module as shared library (for development) or as a part of the Godot binary (for release). To do that we can define a custom flag to be passed to SCons using the ``ARGUMENT`` command:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:414
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:498
msgid "Now by default ``scons`` command will build our module as part of Godot's binary and as a shared library when passing ``summator_shared=yes``."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:417
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:501
msgid "Finally, you can even speed up the build further by explicitly specifying your shared module as target in the SCons command:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:425
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:509
msgid "Writing custom documentation"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:427
msgid "Writing documentation may seem like a boring task, but it is highly recommended to document your newly created module in order to make it easier for users to benefit from it. Not to mention that the code you've written one year ago may become indistinguishable from the code that was written by someone else, so be kind to your future self!"
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:511
msgid "Writing documentation may seem like a boring task, but it is highly recommended to document your newly created module to make it easier for users to benefit from it. Not to mention that the code you've written one year ago may become indistinguishable from the code that was written by someone else, so be kind to your future self!"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:433
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:517
msgid "There are several steps in order to setup custom docs for the module:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:435
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:519
msgid "Make a new directory in the root of the module. The directory name can be anything, but we'll be using the ``doc_classes`` name throughout this section."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:438
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:522
msgid "Now, we need to edit ``config.py``, add the following snippet:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:450
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:534
msgid "The ``get_doc_path()`` function is used by the build system to determine the location of the docs. In this case, they will be located in the ``modules/summator/doc_classes`` directory. If you don't define this, the doc path for your module will fall back to the main ``doc/classes`` directory."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:456
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:540
msgid "The ``get_doc_classes()`` method is necessary for the build system to know which registered classes belong to the module. You need to list all of your classes here. The classes that you don't list will end up in the main ``doc/classes`` directory."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:463
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:547
msgid "You can use Git to check if you have missed some of your classes by checking the untracked files with ``git status``. For example::"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:468
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:552
msgid "Example output::"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:480
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:564
msgid "Now we can generate the documentation:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:482
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:566
msgid "We can do this via running Godot's doctool i.e. ``godot --doctool <path>``, which will dump the engine API reference to the given ``<path>`` in XML format."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:485
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:569
msgid "In our case we'll point it to the root of the cloned repository. You can point it to an another folder, and just copy over the files that you need."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:488
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:572
msgid "Run command:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:494
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:578
msgid "Now if you go to the ``godot/modules/summator/doc_classes`` folder, you will see that it contains a ``Summator.xml`` file, or any other classes, that you referenced in your ``get_doc_classes`` function."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:498
msgid "Edit the file(s) following :ref:`doc_updating_the_class_reference` and recompile the engine."
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:582
msgid "Edit the file(s) following :ref:`doc_class_reference_primer` and recompile the engine."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:500
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:584
msgid "Once the compilation process is finished, the docs will become accessible within the engine's built-in documentation system."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:503
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:587
msgid "In order to keep documentation up-to-date, all you'll have to do is simply modify one of the XML files and recompile the engine from now on."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:506
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:590
msgid "If you change your module's API, you can also re-extract the docs, they will contain the things that you previously added. Of course if you point it to your godot folder, make sure you don't lose work by extracting older docs from an older engine build on top of the newer ones."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:511
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:595
msgid "Note that if you don't have write access rights to your supplied ``<path>``, you might encounter an error similar to the following:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:523
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:606
msgid "Writing custom unit tests"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:608
msgid "It's possible to write self-contained unit tests as part of a C++ module. If you are not familiar with the unit testing process in Godot yet, please refer to :ref:`doc_unit_testing`."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:612
msgid "The procedure is the following:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:614
msgid "Create a new directory named ``tests/`` under your module's root:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:622
msgid "Create a new test suite: ``test_summator.h``. The header must be prefixed with ``test_`` so that the build system can collect it and include it as part of the ``tests/test_main.cpp`` where the tests are run."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:626
msgid "Write some test cases. Here's an example:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:661
msgid "Compile the engine with ``scons tests=yes``, and run the tests with the following command:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:668
msgid "You should see the passing assertions now."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:673
msgid "Adding custom editor icons"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:525
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:675
msgid "Similarly to how you can write self-contained documentation within a module, you can also create your own custom icons for classes to appear in the editor."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:528
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:678
msgid "For the actual process of creating editor icons to be integrated within the engine, please refer to :ref:`doc_editor_icons` first."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:531
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:681
msgid "Once you've created your icon(s), proceed with the following steps:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:533
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:683
msgid "Make a new directory in the root of the module named ``icons``. This is the default path for the engine to look for module's editor icons."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:536
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:686
msgid "Move your newly created ``svg`` icons (optimized or not) into that folder."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:538
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:688
msgid "Recompile the engine and run the editor. Now the icon(s) will appear in editor's interface where appropriate."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:541
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:691
msgid "If you'd like to store your icons somewhere else within your module, add the following code snippet to ``config.py`` to override the default path:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:550
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:700
msgid "Summing up"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:552
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:702
msgid "Remember to:"
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:554
msgid "use ``GDCLASS`` macro for inheritance, so Godot can wrap it"
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:704
msgid "Use ``GDCLASS`` macro for inheritance, so Godot can wrap it."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:555
msgid "use ``_bind_methods`` to bind your functions to scripting, and to allow them to work as callbacks for signals."
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:705
msgid "Use ``_bind_methods`` to bind your functions to scripting, and to allow them to work as callbacks for signals."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:558
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:707
msgid "**Avoid multiple inheritance for classes exposed to Godot**, as ``GDCLASS`` doesn't support this. You can still use multiple inheritance in your own classes as long as they're not exposed to Godot's scripting API."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:711
msgid "But this is not all, depending what you do, you will be greeted with some (hopefully positive) surprises."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:561
msgid "If you inherit from :ref:`class_Node` (or any derived node type, such as Sprite), your new class will appear in the editor, in the inheritance tree in the \"Add Node\" dialog."
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:714
msgid "If you inherit from :ref:`class_Node` (or any derived node type, such as Sprite2D), your new class will appear in the editor, in the inheritance tree in the \"Add Node\" dialog."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:564
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:717
msgid "If you inherit from :ref:`class_Resource`, it will appear in the resource list, and all the exposed properties can be serialized when saved/loaded."
msgstr ""
#: ../../docs/development/cpp/custom_modules_in_cpp.rst:567
#: ../../docs/contributing/development/core_and_modules/custom_modules_in_cpp.rst:720
msgid "By this same logic, you can extend the Editor and almost any area of the engine."
msgstr ""

View File

@@ -0,0 +1,233 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:4
msgid "Custom platform ports"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:6
msgid "Similar to :ref:`doc_custom_modules_in_cpp`, Godot's multi-platform architecture is designed in a way that allows creating platform ports without modifying any existing source code."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:10
msgid "An example of a custom platform port distributed independently from the engine is `FRT <https://github.com/efornara/frt>`__, which targets single-board computers. Note that this platform port currently targets Godot 3.x; therefore, it does not use the :ref:`class_DisplayServer` abstraction that is new in Godot 4."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:15
msgid "Some reasons to create custom platform ports might be:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:17
msgid "You want to :ref:`port your game to consoles <doc_consoles>`, but wish to write the platform layer yourself. This is a long and arduous process, as it requires signing NDAs with console manufacturers, but it allows you to have full control over the console porting process."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:21
msgid "You want to port Godot to an exotic platform that isn't currently supported."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:23
msgid "If you have questions about creating a custom platform port, feel free to ask in the ``#platforms`` channel of the `Godot Contributors Chat <https://chat.godotengine.org/channel/platforms>`__."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:29
msgid "Godot is a modern engine with modern requirements. Even if you only intend to run simple 2D projects on the target platform, it still requires an amount of memory that makes it unviable to run on most retro consoles. For reference, in Godot 4, an empty project with nothing visible requires about 100 MB of RAM to run on Linux (50 MB in headless mode)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:35
msgid "If you want to run Godot on heavily memory-constrained platforms, older Godot versions have lower memory requirements. The porting process is similar, with the exception of :ref:`class_DisplayServer` not being split from the :ref:`class_OS` singleton."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:41
msgid "Official platform ports"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:43
msgid "The official platform ports can be used as a reference when creating a custom platform port:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:45
msgid "`Windows <https://github.com/godotengine/godot/tree/master/platform/windows>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:46
msgid "`macOS <https://github.com/godotengine/godot/tree/master/platform/macos>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:47
msgid "`Linux/\\*BSD <https://github.com/godotengine/godot/tree/master/platform/linuxbsd>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:48
msgid "`Android <https://github.com/godotengine/godot/tree/master/platform/android>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:49
msgid "`iOS <https://github.com/godotengine/godot/tree/master/platform/ios>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:50
msgid "`UWP <https://github.com/godotengine/godot/tree/master/platform/uwp>`__ *(not currently working)*"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:51
msgid "`Web <https://github.com/godotengine/godot/tree/master/platform/web>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:53
msgid "While platform code is usually self-contained, there are exceptions to this rule. For instance, audio drivers that are shared across several platforms and rendering backends are located in the `drivers/ folder <https://github.com/godotengine/godot/tree/master/drivers>`__ of the Godot source code."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:60
msgid "Creating a custom platform port"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:62
msgid "Creating a custom platform port is a large undertaking which requires prior knowledge of the platform's SDKs. Depending on what features you need, the amount of work needed varies:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:67
msgid "Required features of a platform port"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:69
msgid "At the very least, a platform port must have methods from the :ref:`class_OS` singleton implemented to be buildable and usable for headless operation. A ``logo.svg`` (32×32) vector image must also be present within the platform folder. This logo is displayed in the Export dialog for each export preset targeting the platform in question."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:75
msgid "See `this implementation <https://github.com/godotengine/godot/blob/master/platform/linuxbsd/os_linuxbsd.cpp>`__ for the Linux/\\*BSD platform as an example. See also the `OS singleton header <https://github.com/godotengine/godot/blob/master/core/os/os.h>`__ for reference."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:82
msgid "If your target platform is UNIX-like, consider inheriting from the ``OS_Unix`` class to get much of the work done automatically."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:85
msgid "If the platform is not UNIX-like, you might use the `Windows port <https://github.com/godotengine/godot/blob/master/platform/windows/os_windows.cpp>` as a reference."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:89
msgid "**detect.py file**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:91
msgid "A ``detect.py`` file must be created within the platform's folder with all methods implemented. This file is required for SCons to detect the platform as a valid option for compiling. See the `detect.py file <https://github.com/godotengine/godot/blob/master/platform/linuxbsd/detect.py>`__ for the Linux/\\*BSD platform as an example."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:97
msgid "All methods should be implemented within ``detect.py`` as follows:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:99
msgid "``is_active()``: Can be used to temporarily disable building for a platform. This should generally always return ``True``."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:101
msgid "``get_name()``: Returns the platform's user-visible name as a string."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:102
msgid "``can_build()``: Return ``True`` if the host system is able to build for the target platform, ``False`` otherwise. Do not put slow checks here, as this is queried when the list of platforms is requested by the user. Use ``configure()`` for extensive dependency checks instead."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:106
msgid "``get_opts()``: Returns the list of SCons build options that can be defined by the user for this platform."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:108
msgid "``get_flags()``: Returns the list of overridden SCons flags for this platform."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:109
msgid "``configure()``: Perform build configuration, such as selecting compiler options depending on SCons options chosen."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:113
msgid "Optional features of a platform port"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:115
msgid "In practice, headless operation doesn't suffice if you want to see anything on screen and handle input devices. You may also want audio output for most games."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:119
msgid "*Some links on this list point to the Linux/\\*BSD platform implementation as a reference.*"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:121
msgid "One or more `DisplayServers <https://github.com/godotengine/godot/blob/master/platform/linuxbsd/x11/display_server_x11.cpp>`__, with the windowing methods implemented. DisplayServer also covers features such as mouse support, touchscreen support and tablet driver (for pen input). See the `DisplayServer singleton header <https://github.com/godotengine/godot/blob/master/servers/display_server.h>`__ for reference."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:128
msgid "For platforms not featuring full windowing support (or if it's not relevant for the port you are making), most windowing functions can be left mostly unimplemented. These functions can be made to only check if the window ID is ``MAIN_WINDOW_ID`` and specific operations like resizing may be tied to the platform's screen resolution feature (if relevant). Any attempt to create or manipulate other window IDs can be rejected."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:134
msgid "*If the target platform supports the graphics APIs in question:* Rendering context for `Vulkan <https://github.com/godotengine/godot/blob/master/platform/linuxbsd/x11/vulkan_context_x11.cpp>`__, `OpenGL 3.3 or OpenGL ES 3.0 <https://github.com/godotengine/godot/blob/master/platform/linuxbsd/x11/gl_manager_x11.cpp>`__."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:137
msgid "Input handlers for `keyboard <https://github.com/godotengine/godot/blob/master/platform/linuxbsd/x11/key_mapping_x11.cpp>`__ and `controller <https://github.com/godotengine/godot/blob/master/platform/linuxbsd/joypad_linux.cpp>`__."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:139
msgid "One or more `audio drivers <https://github.com/godotengine/godot/blob/master/drivers/pulseaudio/audio_driver_pulseaudio.cpp>`__. The audio driver can be located in the ``platform/`` folder (this is done for the Android and Web platforms), or in the ``drivers/`` folder if multiple platforms may be using this audio driver. See the `AudioServer singleton header <https://github.com/godotengine/godot/blob/master/servers/audio_server.h>`__ for reference."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:145
msgid "`Crash handler <https://github.com/godotengine/godot/blob/master/platform/linuxbsd/crash_handler_linuxbsd.cpp>`__, for printing crash backtraces when the game crashes. This allows for easier troubleshooting on platforms where logs aren't readily accessible."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:148
msgid "`Text-to-speech driver <https://github.com/godotengine/godot/blob/master/platform/linuxbsd/tts_linux.cpp>`__ (for accessibility)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:150
msgid "`Export handler <https://github.com/godotengine/godot/tree/master/platform/linuxbsd/export>`__ (for exporting from the editor, including :ref:`doc_one-click_deploy`). Not required if you intend to export only a PCK from the editor, then run the export template binary directly by renaming it to match the PCK file. See the `EditorExportPlatform header <https://github.com/godotengine/godot/blob/master/editor/export/editor_export_platform.h>`__ for reference. ``run_icon.svg`` (16×16) should be present within the platform folder if :ref:`doc_one-click_deploy` is implemented for the target platform. This icon is displayed at the top of the editor when one-click deploy is set up for the target platform."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:161
msgid "If the target platform doesn't support running Vulkan, OpenGL 3.3 or OpenGL ES 3.0, you have two options:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:164
msgid "Use a library at run-time to translate Vulkan or OpenGL calls to another graphics API. For example, `MoltenVK <https://moltengl.com/moltenvk/>`__ is used on macOS to translate Vulkan to Metal at run-time."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:167
msgid "Create a new renderer from scratch. This is a large undertaking, especially if you want to support both 2D and 3D rendering with advanced features."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:171
msgid "Distributing a custom platform port"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:175
msgid "Before distributing a custom platform port, make sure you're allowed to distribute all the code that is being linked against. Console SDKs are typically under NDAs which prevent redistribution to the public."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:179
msgid "Platform ports are designed to be as self-contained as possible. Most of the code can be kept within a single folder located in ``platform/``. Like :ref:`doc_custom_modules_in_cpp`, this allows for streamlining the build process by making it possible to ``git clone`` a platform folder within a Godot repository clone's ``platform/`` folder, then run ``scons platform=<name>``. No other steps are necessary for building, unless third-party platform-specific dependencies need to be installed first."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_platform_ports.rst:187
msgid "However, when a custom rendering backend is needed, another folder must be added in ``drivers/``. In this case, the platform port can be distributed as a fork of the Godot repository, or as a collection of several folders that can be added over a Godot Git repository clone."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,169 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:4
msgid "Custom resource format loaders"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:7
msgid "Introduction"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:9
msgid "ResourceFormatLoader is a factory interface for loading file assets. Resources are primary containers. When load is called on the same file path again, the previous loaded Resource will be referenced. Naturally, loaded resources must be stateless."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:14
msgid "This guide assumes the reader knows how to create C++ modules and Godot data types. If not, refer to this guide: :ref:`doc_custom_modules_in_cpp`"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:18
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:39
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:303
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:356
msgid "References"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:20
msgid ":ref:`ResourceLoader<class_resourceloader>`"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:21
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:358
msgid "`core/io/resource_loader.cpp <https://github.com/godotengine/godot/blob/master/core/io/resource_loader.cpp>`_"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:24
msgid "What for?"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:26
msgid "Adding new support for many file formats"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:27
msgid "Audio formats"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:28
msgid "Video formats"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:29
msgid "Machine learning models"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:32
msgid "What not?"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:34
msgid "Raster images"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:36
msgid "ImageFormatLoader should be used to load images."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:41
msgid "`core/io/image_loader.h <https://github.com/godotengine/godot/blob/master/core/io/image_loader.h>`_"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:45
msgid "Creating a ResourceFormatLoader"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:47
msgid "Each file format consist of a data container and a ``ResourceFormatLoader``."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:49
msgid "ResourceFormatLoaders are classes which return all the necessary metadata for supporting new extensions in Godot. The class must return the format name and the extension string."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:53
msgid "In addition, ResourceFormatLoaders must convert file paths into resources with the ``load`` function. To load a resource, ``load`` must read and handle data serialization."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:109
msgid "Creating a ResourceFormatSaver"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:111
msgid "If you'd like to be able to edit and save a resource, you can implement a ``ResourceFormatSaver``:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:158
msgid "Creating custom data types"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:160
msgid "Godot may not have a proper substitute within its :ref:`doc_core_types` or managed resources. Godot needs a new registered data type to understand additional binary formats such as machine learning models."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:164
msgid "Here is an example of creating a custom datatype:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:262
msgid "Considerations"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:264
msgid "Some libraries may not define certain common routines such as IO handling. Therefore, Godot call translations are required."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:267
msgid "For example, here is the code for translating ``FileAccess`` calls into ``std::istream``."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:305
msgid "`istream <https://cplusplus.com/reference/istream/istream/>`_"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:306
msgid "`streambuf <https://cplusplus.com/reference/streambuf/streambuf/?kw=streambuf>`_"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:307
msgid "`core/io/file_access.h <https://github.com/godotengine/godot/blob/master/core/os/file_access.h>`_"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:310
msgid "Registering the new file format"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:312
msgid "Godot registers ``ResourcesFormatLoader`` with a ``ResourceLoader`` handler. The handler selects the proper loader automatically when ``load`` is called."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:361
msgid "Loading it on GDScript"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:363
msgid "Save a file called ``demo.json`` with the following contents and place it in the project's root folder:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/custom_resource_format_loaders.rst:379
msgid "Then attach the following script to any node::"
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,29 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/core_and_modules/godot_architecture_diagram.rst:4
msgid "Godot's architecture diagram"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/godot_architecture_diagram.rst:6
msgid "The following diagram describes the architecture used by Godot, from the core components down to the abstracted drivers, via the scene structure and the servers."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,42 +16,30 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/index.rst:2
msgid "Engine development"
#: ../../docs/contributing/development/core_and_modules/index.rst:2
msgid "Engine core and modules"
msgstr ""
#: ../../docs/development/cpp/index.rst:5
msgid "Setting up a development environment"
#: ../../docs/contributing/development/core_and_modules/index.rst:4
msgid "The following pages are meant to introduce the global organization of Godot Engine's source code, and give useful tips for extending and fixing the engine on the C++ side."
msgstr ""
#: ../../docs/development/cpp/index.rst:7
msgid "To modify Godot's source code, you need to set up a development environment. Start here."
msgstr ""
#: ../../docs/development/cpp/index.rst:16
#: ../../docs/contributing/development/core_and_modules/index.rst:8
msgid "Getting started with Godot's source code"
msgstr ""
#: ../../docs/development/cpp/index.rst:18
#: ../../docs/contributing/development/core_and_modules/index.rst:10
msgid "This section covers the basics that you will encounter in (almost) every source file."
msgstr ""
#: ../../docs/development/cpp/index.rst:32
#: ../../docs/contributing/development/core_and_modules/index.rst:26
msgid "Extending Godot by modifying its source code"
msgstr ""
#: ../../docs/development/cpp/index.rst:34
#: ../../docs/contributing/development/core_and_modules/index.rst:28
msgid "This section covers what you can do by modifying Godot's C++ source code."
msgstr ""
#: ../../docs/development/cpp/index.rst:47
msgid "Debugging and profiling"
msgstr ""
#: ../../docs/development/cpp/index.rst:49
msgid "This section is about finding spots to optimize in the engine code when you need it in your project."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,31 +16,31 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/inheritance_class_tree.rst:2
#: ../../docs/contributing/development/core_and_modules/inheritance_class_tree.rst:2
msgid "Inheritance class tree"
msgstr ""
#: ../../docs/development/cpp/inheritance_class_tree.rst:5
#: ../../docs/contributing/development/core_and_modules/inheritance_class_tree.rst:5
msgid "Object"
msgstr ""
#: ../../docs/development/cpp/inheritance_class_tree.rst:10
#: ../../docs/contributing/development/core_and_modules/inheritance_class_tree.rst:10
msgid "Reference"
msgstr ""
#: ../../docs/development/cpp/inheritance_class_tree.rst:15
#: ../../docs/contributing/development/core_and_modules/inheritance_class_tree.rst:15
msgid "Control"
msgstr ""
#: ../../docs/development/cpp/inheritance_class_tree.rst:20
#: ../../docs/contributing/development/core_and_modules/inheritance_class_tree.rst:20
msgid "Node2D"
msgstr ""
#: ../../docs/development/cpp/inheritance_class_tree.rst:25
msgid "Spatial"
#: ../../docs/contributing/development/core_and_modules/inheritance_class_tree.rst:25
msgid "Node3D"
msgstr ""
#: ../../docs/development/cpp/inheritance_class_tree.rst:29
#: ../../docs/contributing/development/core_and_modules/inheritance_class_tree.rst:29
msgid "Source files: :download:`class_tree.zip <files/class_tree.zip>`."
msgstr ""

View File

@@ -0,0 +1,992 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:4
msgid "Internal rendering architecture"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:6
msgid "This page is a high-level overview of Godot 4's internal renderer design. It does not apply to previous Godot versions."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:9
msgid "The goal of this page is to document design decisions taken to best suit :ref:`Godot's design philosophy <doc_best_practices_for_engine_contributors>`, while providing a starting point for new rendering contributors."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:13
msgid "If you have questions about rendering internals not answered here, feel free to ask in the ``#rendering`` channel of the `Godot Contributors Chat <https://chat.godotengine.org/channel/rendering>`__."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:19
msgid "If you have difficulty understanding concepts on this page, it is recommended to go through an OpenGL tutorial such as `LearnOpenGL <https://learnopengl.com/>`__."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:23
msgid "Modern low-level APIs (Vulkan/Direct3D 12) require intermediate knowledge of higher-level APIs (OpenGL/Direct3D 11) to be used effectively. Thankfully, contributors rarely need to work directly with low-level APIs. Godot's renderers are built entirely on OpenGL and RenderingDevice, which is our abstraction over Vulkan/Direct3D 12."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:32
msgid "Rendering methods"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:35
msgid "Forward+"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:37
msgid "This is a forward renderer that uses a *clustered* approach to lighting."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:39
msgid "Clustered lighting uses a compute shader to group lights into a 3D frustum aligned grid. Then, at render time, pixels can lookup what lights affect the grid cell they are in and only run light calculations for lights that might affect that pixel."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:44
msgid "This approach can greatly speed up rendering performance on desktop hardware, but is substantially less efficient on mobile."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:48
msgid "Forward Mobile"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:50
msgid "This is a forward renderer that uses a traditional single-pass approach to lighting."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:52
msgid "Intended for mobile platforms, but can also run on desktop platforms. This rendering method is optimized to perform well on mobile GPUs. Mobile GPUs have a very different architecture compared to desktop GPUs due to their unique constraints around battery usage, heat, and overall bandwidth limitations of reading and writing data. Compute shaders also have very limited support or aren't supported at all. As a result, the mobile renderer purely uses raster-based shaders (fragment/vertex)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:60
msgid "Unlike desktop GPUs, mobile GPUs perform *tile-based rendering*. Instead of rendering the whole image as a single unit, the image is divided in smaller tiles that fit within the faster internal memory of the mobile GPU. Each tile is rendered and then written out to the destination texture. This all happens automatically on the graphics driver."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:66
msgid "The problem is that this introduces bottlenecks in our traditional approach. For desktop rendering, we render all opaque geometry, then handle the background, then transparent geometry, then post-processing. Each pass will need to read the current result into tile memory, perform its operations and then write it out again. We then wait for all tiles to be completed before moving on to the next pass."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:73
msgid "The first important change in the mobile renderer is that the mobile renderer does not use the RGBA16F texture formats that the desktop renderer does. Instead, it is using a R10G10B10A2 UNORM texture format. This halves the bandwidth required and has further improvements as mobile hardware often further optimizes for 32-bit formats. The tradeoff is that the mobile renderer has limited HDR capabilities due to the reduced precision and maximum values in the color data."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:80
msgid "The second important change is the use of sub-passes whenever possible. Sub-passes allows us to perform the rendering steps end-to-end per tile saving on the overhead introduced by reading from and writing to the tiles between each rendering pass. The ability to use sub-passes is limited by the inability to read neighboring pixels, as we're constrained to working within a single tile."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:86
msgid "This limitation of subpasses results in not being able to implement features such as glow and depth of field efficiently. Similarly, if there is a requirement to read from the screen texture or depth texture, we must fully write out the rendering result limiting our ability to use sub-passes. When such features are enabled, a mix of sub-passes and normal passes are used, and these features result in a notable performance penalty."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:93
msgid "On desktop platforms, the use of sub-passes won't have any impact on performance. However, this rendering method can still perform better than Clustered Forward in simple scenes thanks to its lower complexity and lower bandwidth usage. This is especially noticeable on low-end GPUs, integrated graphics or in VR applications."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:99
msgid "Given its low-end focus, this rendering method does not provide high-end rendering features such as SDFGI and :ref:`doc_volumetric_fog`. Several post-processing effects are also not available."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:106
msgid "Compatibility"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:110
msgid "This is the only rendering method available when using the OpenGL driver. This rendering method is not available when using Vulkan or Direct3D 12."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:113
msgid "This is a traditional (non-clustered) forward renderer. It's intended for old GPUs that don't have Vulkan support, but still works very efficiently on newer hardware. Specifically, it is optimized for older and lower-end mobile devices However, many optimizations carry over making it a good choice for older and lower-end desktop as well."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:119
msgid "Like the Mobile renderer, the Compatibility renderer uses an R10G10B10A2 UNORM texture for 3D rendering. Unlike the mobile renderer, colors are tonemapped and stored in sRGB format so there is no HDR support. This avoids the need for a tonemapping pass and allows us to use the lower bit texture without substantial banding."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:125
msgid "The Compatibility renderer uses a traditional forward single-pass approach to drawing objects with lights, but it uses a multi-pass approach to draw lights with shadows. Specifically, in the first pass, it can draw multiple lights without shadows and up to one DirectionalLight3D with shadows. In each subsequent pass, it can draw up to one OmniLight3D, one SpotLight3D and one DirectionalLight3D with shadows. Lights with shadows will affect the scene differently than lights without shadows, as the lighting is blended in sRGB space instead of linear space. This difference in lighting will impact how the scene looks and needs to be kept in mind when designing scenes for the Compatibility renderer."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:136
msgid "Given its low-end focus, this rendering method does not provide high-end rendering features (even less so compared to Forward Mobile). Most post-processing effects are not available."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:141
msgid "Why not deferred rendering?"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:143
msgid "Forward rendering generally provides a better tradeoff for performance versus flexibility, especially when a clustered approach to lighting is used. While deferred rendering can be faster in some cases, it's also less flexible and requires using hacks to be able to use MSAA. Since games with a less realistic art style can benefit a lot from MSAA, we chose to go with forward rendering for Godot 4 (like Godot 3)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:150
msgid "That said, parts of the forward renderer *are* performed with a deferred approach to allow for some optimizations when possible. This applies to VoxelGI and SDFGI in particular."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:154
msgid "A clustered deferred renderer may be developed in the future. This renderer could be used in situations where performance is favored over flexibility."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:158
msgid "Rendering drivers"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:160
msgid "Godot 4 supports the following graphics APIs:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:163
msgid "Vulkan"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:165
msgid "This is the main driver in Godot 4, with most of the development focus going towards this driver."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:168
msgid "Vulkan 1.0 is required as a baseline, with optional Vulkan 1.1 and 1.2 features used when available. `volk <https://github.com/zeux/volk>`__ is used as a Vulkan loader, and `Vulkan Memory Allocator <https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator>`__ is used for memory management."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:174
msgid "Both the Forward+ and Mobile :ref:`doc_internal_rendering_architecture_methods` are supported when using the Vulkan driver."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:178
msgid "**Vulkan context creation:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:180
msgid "`drivers/vulkan/vulkan_context.cpp <https://github.com/godotengine/godot/blob/4.0/drivers/vulkan/vulkan_context.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:183
msgid "Direct3D 12"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:185
msgid "Like Vulkan, the Direct3D 12 driver targets modern platforms only. It is designed to target both Windows and Xbox (whereas Vulkan can't be used directly on Xbox)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:188
msgid "Both the Forward+ and Mobile :ref:`doc_internal_rendering_architecture_methods` can be used with Direct3D 12."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:191
msgid ":ref:`doc_internal_rendering_architecture_core_shaders` are shared with the Vulkan renderer. Shaders are transpiled from GLSL to HLSL using Mesa NIR (`more information <https://godotengine.org/article/d3d12-adventures-in-shaderland/>`__). This means you don't need to know HLSL to work on the Direct3D 12 renderer, although knowing the language's basics is recommended to ease debugging."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:197
msgid "**As of May 2023, this driver is still in development and is not merged in Godot 4.0 or the master branch.** While Direct3D 12 allows supporting Direct3D-exclusive features on Windows 11 such as windowed optimizations and Auto HDR, Vulkan is still recommended for most projects. See the `pull request that introduced Direct3D 12 support <https://github.com/godotengine/godot/pull/70315>`__ for more information."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:205
msgid "Metal"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:207
msgid "Godot supports Metal rendering via `MoltenVK <https://github.com/KhronosGroup/MoltenVK>`__, as macOS and iOS do not support Vulkan natively. This is done automatically when specifying the Vulkan driver in the Project Settings."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:211
msgid "MoltenVK makes driver maintenance easy at the cost of some performance overhead. Also, MoltenVK has several limitations that a native Metal driver implementation wouldn't have. Both the clustered and mobile :ref:`doc_internal_rendering_architecture_methods` can be used with a Metal backend via MoltenVK."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:217
msgid "A native Metal driver is planned in the future for better performance and compatibility."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:221
msgid "OpenGL"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:223
msgid "This driver uses OpenGL ES 3.0 and targets legacy and low-end devices that don't support Vulkan. OpenGL 3.3 Core Profile is used on desktop platforms to run this driver, as most graphics drivers on desktop don't support OpenGL ES. WebGL 2.0 is used for web exports."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:228
msgid "Only the :ref:`doc_internal_rendering_architecture_compatibility` rendering method can be used with the OpenGL driver."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:231
msgid ":ref:`doc_internal_rendering_architecture_core_shaders` are entirely different from the Vulkan renderer."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:234
msgid "**As of May 2023, this driver is still in development.** Many features are still not implemented, especially in 3D."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:238
msgid "Summary of rendering drivers/methods"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:240
msgid "The following rendering API + rendering method combinations are currently possible:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:242
msgid "Vulkan + Forward+"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:243
msgid "Vulkan + Forward Mobile"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:244
msgid "Direct3D 12 + Forward+"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:245
msgid "Direct3D 12 + Forward Mobile"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:246
msgid "Metal + Forward+ (via MoltenVK)"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:247
msgid "Metal + Forward Mobile (via MoltenVK)"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:248
msgid "OpenGL + Compatibility"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:250
msgid "Each combination has its own limitations and performance characteristics. Make sure to test your changes on all rendering methods if possible before opening a pull request."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:255
msgid "RenderingDevice abstraction"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:259
msgid "The OpenGL driver does not use the RenderingDevice abstraction."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:261
msgid "To make the complexity of modern low-level graphics APIs more manageable, Godot uses its own abstraction called RenderingDevice."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:264
msgid "This means that when writing code for modern rendering methods, you don't actually use the Vulkan or Direct3D 12 APIs directly. While this is still lower-level than an API like OpenGL, this makes working on the renderer easier, as RenderingDevice will abstract many API-specific quirks for you. The RenderingDevice presents a similar level of abstraction as Metal or WebGPU."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:270
msgid "**Vulkan RenderingDevice implementation:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:272
msgid "`drivers/vulkan/rendering_device_vulkan.cpp <https://github.com/godotengine/godot/blob/4.0/drivers/vulkan/rendering_device_vulkan.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:275
msgid "Core rendering classes architecture"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:277
msgid "This diagram represents the structure of rendering classes in Godot, including the RenderingDevice abstraction:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:281
msgid "`View at full size <https://raw.githubusercontent.com/godotengine/godot-docs/4.0/contributing/development/core_and_modules/img/rendering_architecture_diagram.webp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:286
msgid "Core shaders"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:288
msgid "While shaders in Godot projects are written using a :ref:`custom language inspired by GLSL <doc_shading_language>`, core shaders are written directly in GLSL."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:292
msgid "These core shaders are embedded in the editor and export template binaries at compile-time. To see any changes you've made to those GLSL shaders, you need to recompile the editor or export template binary."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:296
msgid "Some material features such as height mapping, refraction and proximity fade are not part of core shaders, and are performed in the default BaseMaterial3D using the Godot shader language instead (not GLSL). This is done by procedurally generating the required shader code depending on the features enabled in the material."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:302
msgid "By convention, shader files with ``_inc`` in their name are included in other GLSL files for better code reuse. Standard GLSL preprocessing is used to achieve this."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:308
msgid "Core material shaders will be used by every material in the scene both with the default BaseMaterial3D and custom shaders. As a result, these shaders must be kept as simple as possible to avoid performance issues and ensure shader compilation doesn't become too slow."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:313
msgid "If you use ``if`` branching in a shader, performance may decrease as :abbr:`VGPR (Vector General-Purpose Register)` usage will increase in the shader. This happens even if all pixels evaluate to ``true`` or ``false`` in a given frame."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:318
msgid "If you use ``#if`` preprocessor branching, the number of required shader versions will increase in the scene. In a worst-case scenario, adding a single boolean ``#define`` can *double* the number of shader versions that may need to be compiled in a given scene. In some cases, Vulkan specialization constants can be used as a faster (but more limited) alternative."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:325
msgid "This means there is a high barrier to adding new built-in material features in Godot, both in the core shaders and BaseMaterial3D. While BaseMaterial3D can make use of dynamic code generation to only include the shader code if the feature is enabled, it'll still require generating more shader versions when these features are used in a project. This can make shader compilation stutter more noticeable in complex 3D scenes."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:332
msgid "See `The Shader Permutation Problem <https://therealmjp.github.io/posts/shader-permutations-part1/>`__ and `Branching on a GPU <https://medium.com/@jasonbooth_86226/branching-on-a-gpu-18bfc83694f2>`__ blog posts for more information."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:338
msgid "**Core GLSL material shaders:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:340
msgid "Forward+: `servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:341
msgid "Forward Mobile: `servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:342
msgid "Compatibility: `drivers/gles3/shaders/scene.glsl <https://github.com/godotengine/godot/blob/4.0/drivers/gles3/shaders/scene.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:344
msgid "**Material shader generation:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:346
msgid "`scene/resources/material.cpp <https://github.com/godotengine/godot/blob/4.0/scene/resources/material.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:348
msgid "**Other GLSL shaders for Forward+ and Forward Mobile rendering methods:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:350
msgid "`servers/rendering/renderer_rd/shaders/ <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:351
msgid "`modules/lightmapper_rd/ <https://github.com/godotengine/godot/blob/4.0/modules/lightmapper_rd>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:353
msgid "**Other GLSL shaders for the Compatibility rendering method:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:355
msgid "`drivers/gles3/shaders/ <https://github.com/godotengine/godot/blob/4.0/drivers/gles3/shaders/>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:358
msgid "2D and 3D rendering separation"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:362
msgid "The following is only applicable in the Forward+ and Forward Mobile rendering methods, not in Compatibility. Multiple Viewports can be used to emulate this when using the Compatibility backend, or to perform 2D resolution scaling."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:367
msgid "2D and 3D are rendered to separate buffers, as 2D rendering in Godot is performed in :abbr:`LDR (Low Dynamic Range)` sRGB-space while 3D rendering uses :abbr:`HDR (High Dynamic Range)` linear space."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:371
msgid "The color format used for 2D rendering is RGB8 (RGBA8 if the **Transparent** property on the Viewport is enabled). 3D rendering uses a 24-bit unsigned normalized integer depth buffer, or 32-bit signed floating-point if a 24-bit depth buffer is not supported by the hardware. 2D rendering does not use a depth buffer."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:377
msgid "3D resolution scaling is performed differently depending on whether bilinear or FSR 1.0 scaling is used. When bilinear scaling is used, no special upscaling shader is run. Instead, the viewport's texture is stretched and displayed with a linear sampler (which makes the filtering happen directly on the hardware). This allows maximizing the performance of bilinear 3D scaling."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:383
msgid "The ``configure()`` function in RenderSceneBuffersRD reallocates the 2D/3D buffers when the resolution or scaling changes."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:386
msgid "Dynamic resolution scaling isn't supported yet, but is planned in a future Godot release."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:389
msgid "**2D and 3D rendering buffer configuration C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:391
msgid "`servers/rendering/renderer_rd/storage_rd/render_scene_buffers_rd.cpp <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/storage_rd/render_scene_buffers_rd.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:394
msgid "2D rendering techniques"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:396
msgid "2D light rendering is performed in a single pass to allow for better performance with large amounts of lights."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:399
msgid "The Forward+ and Mobile rendering methods don't feature 2D batching yet, but it's planned for a future release."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:402
msgid "The Compatibility backend features 2D batching to improve performance, which is especially noticeable with lots of text on screen."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:405
msgid "MSAA can be enabled in 2D to provide \"automatic\" line and polygon antialiasing, but FXAA does not affect 2D rendering as it's calculated before 2D rendering begins. Godot's 2D drawing methods such as the Line2D node or some CanvasItem ``draw_*()`` methods provide their own way of antialiasing based on triangle strips and vertex colors, which don't require MSAA to work."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:411
msgid "A 2D signed distance field representing LightOccluder2D nodes in the viewport is automatically generated if an user shader requests it. This can be used for various effects in custom shaders, such as 2D global illumination. It is also used to calculate particle collisions in 2D."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:416
msgid "**2D SDF generation GLSL shader:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:418
msgid "`https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/canvas_sdf.glsl <servers/rendering/renderer_rd/shaders/canvas_sdf.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:421
msgid "3D rendering techniques"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:424
msgid "Batching and instancing"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:426
msgid "In the Forward+ backend, Vulkan instancing is used to group rendering of identical objects for performance. This is not as fast as static mesh merging, but it still allows instances to be culled individually."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:431
msgid "Light, decal and reflection probe rendering"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:435
msgid "Reflection probe and decal rendering are currently not available in the Compatibility backend."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:438
msgid "As its name implies, the Forward+ backend uses clustered lighting. This allows using as many lights as you want; performance largely depends on screen coverage. Shadow-less lights can be almost free if they don't occupy much space on screen."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:443
msgid "All rendering methods also support rendering up to 8 directional lights at the same time (albeit with lower shadow quality when more than one light has shadows enabled)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:447
msgid "The Forward Mobile backend uses a single-pass lighting approach, with a limitation of 8 OmniLights + 8 SpotLights affecting each Mesh *resource* (plus a limitation of 256 OmniLights + 256 SpotLights in the camera view). These limits are hardcoded and can't be adjusted in the project settings."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:452
msgid "The Compatibility backend uses a hybrid single-pass + multi-pass lighting approach. Lights without shadows are rendered in a single pass. Lights with shadows are rendered in multiple passes. This is required for performance reasons on mobile devices. As a result, performance does not scale well with many shadow-casting lights. It is recommended to only have a handful of lights with shadows in the camera frustum at a time and for those lights to be spread apart so that each object is only touched by 1 or 2 shadowed lights at a time. The maximum number of lights visible at once can be adjusted in the project settings."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:462
msgid "In all 3 methods, lights without shadows are much cheaper than lights with shadows. To improve performance, lights are only updated when the light is modified or when objects in its radius are modified. Godot currently doesn't separate static shadow rendering from dynamic shadow rendering, but this is planned in a future release."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:468
msgid "Clustering is also used for reflection probes and decal rendering in the Forward+ backend."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:472
msgid "Shadow mapping"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:474
msgid "Both Forward+ and Forward Mobile methods use :abbr:`PCF (Percentage Closer Filtering)` to filter shadow maps and create a soft penumbra. Instead of using a fixed PCF pattern, these methods use a vogel disk pattern which allows for changing the number of samples and smoothly changing the quality."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:480
msgid "Godot also supports percentage-closer soft shadows (PCSS) for more realistic shadow penumbra rendering. PCSS shadows are limited to the Forward+ backend as they're too demanding to be usable in the Forward Mobile backend. PCSS also uses a vogel-disk shaped kernel."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:485
msgid "Additionally, both shadow-mapping techniques rotate the kernel on a per-pixel basis to help soften under-sampling artifacts."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:488
msgid "The Compatibility backend doesn't support shadow mapping for any light types yet."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:491
msgid "Temporal antialiasing"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:495
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:603
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:680
msgid "Only available in the Forward+ backend, not the Forward Mobile or Compatibility methods."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:498
msgid "Godot uses a custom TAA implementation based on the old TAA implementation from `Spartan Engine <https://github.com/PanosK92/SpartanEngine>`__."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:501
msgid "Temporal antialiasing requires motion vectors to work. If motion vectors are not correctly generated, ghosting will occur when the camera or objects move."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:504
msgid "Motion vectors are generated on the GPU in the main material shader. This is done by running the vertex shader corresponding to the previous rendered frame (with the previous camera transform) in addition to the vertex shader for the current rendered frame, then storing the difference between them in a color buffer."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:509
msgid "Using `FSR 2.0 <https://github.com/GPUOpen-Effects/FidelityFX-FSR2>`__ instead of a custom TAA implementation is planned in a future release."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:512
msgid "**TAA resolve:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:514
msgid "`servers/rendering/renderer_rd/shaders/effects/taa_resolve.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/taa_resolve.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:517
msgid "Global illumination"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:521
msgid "VoxelGI and SDFGI are only available in the Forward+ backend, not the Forward Mobile or Compatibility methods."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:524
msgid "LightmapGI *baking* is only available in the Forward+ and Forward Mobile methods, and can only be performed within the editor (not in an exported project). LightmapGI *rendering* will eventually be supported by the Compatibility backend."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:529
msgid "Godot supports voxel-based GI (VoxelGI), signed distance field GI (SDFGI) and lightmap baking and rendering (LightmapGI). These techniques can be used simultaneously if desired."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:533
msgid "Lightmap baking happens on the GPU using Vulkan compute shaders. The GPU-based lightmapper is implemented in the LightmapperRD class, which inherits from the Lightmapper class. This allows for implementing additional lightmappers, paving the way for a future port of the CPU-based lightmapper present in Godot 3.x. This would allow baking lightmaps while using the Compatibility backend."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:539
msgid "**Core GI C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:541
msgid "`servers/rendering/renderer_rd/environment/gi.cpp <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/environment/gi.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:542
msgid "`scene/3d/voxel_gi.cpp <https://github.com/godotengine/godot/blob/4.0/scene/3d/voxel_gi.cpp>`__ - VoxelGI node"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:543
msgid "`editor/plugins/voxel_gi_editor_plugin.cpp <https://github.com/godotengine/godot/blob/4.0/editor/plugins/voxel_gi_editor_plugin.cpp>`__ - Editor UI for the VoxelGI node"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:545
msgid "**Core GI GLSL shaders:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:547
msgid "`servers/rendering/renderer_rd/shaders/environment/voxel_gi.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/environment/voxel_gi.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:548
msgid "`servers/rendering/renderer_rd/shaders/environment/voxel_gi_debug.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/environment/voxel_gi_debug.glsl>`__ - VoxelGI debug draw mode"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:549
msgid "`servers/rendering/renderer_rd/shaders/environment/sdfgi_debug.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/environment/sdfgi_debug.glsl>`__ - SDFGI Cascades debug draw mode"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:550
msgid "`servers/rendering/renderer_rd/shaders/environment/sdfgi_debug_probes.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/environment/sdfgi_debug_probes.glsl>`__ - SDFGI Probes debug draw mode"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:551
msgid "`servers/rendering/renderer_rd/shaders/environment/sdfgi_integrate.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/environment/sdfgi_integrate.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:552
msgid "`servers/rendering/renderer_rd/shaders/environment/sdfgi_preprocess.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/environment/sdfgi_preprocess.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:553
msgid "`servers/rendering/renderer_rd/shaders/environment/sdfgi_direct_light.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/environment/sdfgi_direct_light.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:555
msgid "**Lightmapper C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:557
msgid "`scene/3d/lightmap_gi.cpp <https://github.com/godotengine/godot/blob/4.0/scene/3d/lightmap_gi.cpp>`__ - LightmapGI node"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:558
msgid "`editor/plugins/lightmap_gi_editor_plugin.cpp <https://github.com/godotengine/godot/blob/4.0/editor/plugins/lightmap_gi_editor_plugin.cpp>`__ - Editor UI for the LightmapGI node"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:559
msgid "`scene/3d/lightmapper.cpp <https://github.com/godotengine/godot/blob/4.0/scene/3d/lightmapper.cpp>`__ - Abstract class"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:560
msgid "`modules/lightmapper_rd/lightmapper_rd.cpp <https://github.com/godotengine/godot/blob/4.0/modules/lightmapper_rd/lightmapper_rd.cpp>`__ - GPU-based lightmapper implementation"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:562
msgid "**Lightmapper GLSL shaders:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:564
msgid "`modules/lightmapper_rd/lm_raster.glsl <https://github.com/godotengine/godot/blob/4.0/modules/lightmapper_rd/lm_raster.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:565
msgid "`modules/lightmapper_rd/lm_compute.glsl <https://github.com/godotengine/godot/blob/4.0/modules/lightmapper_rd/lm_compute.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:566
msgid "`modules/lightmapper_rd/lm_blendseams.glsl <https://github.com/godotengine/godot/blob/4.0/modules/lightmapper_rd/lm_blendseams.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:569
msgid "Depth of field"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:573
msgid "Only available in the Forward+ and Forward Mobile methods, not the Compatibility backend."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:576
msgid "The Forward+ and Forward Mobile methods use different approaches to DOF rendering, with different visual results. This is done to best match the performance characteristics of the target hardware. In Clustered Forward, DOF is performed using a compute shader. In Forward Mobile, DOF is performed using a fragment shader (raster)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:582
msgid "Box, hexagon and circle bokeh shapes are available (from fastest to slowest). Depth of field can optionally be jittered every frame to improve its appearance when temporal antialiasing is enabled."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:586
msgid "**Depth of field C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:588
msgid "`servers/rendering/renderer_rd/effects/bokeh_dof.cpp <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/effects/bokeh_dof.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:590
msgid "**Depth of field GLSL shader (compute - used for Forward+):**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:592
msgid "`servers/rendering/renderer_rd/shaders/effects/bokeh_dof.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/bokeh_dof.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:594
msgid "**Depth of field GLSL shader (raster - used for Forward Mobile):**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:596
msgid "`servers/rendering/renderer_rd/shaders/effects/bokeh_dof_raster.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/bokeh_dof_raster.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:599
msgid "Screen-space effects (SSAO, SSIL, SSR, SSS)"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:606
msgid "The Forward+ backend supports screen-space ambient occlusion, screen-space indirect lighting, screen-space reflections and subsurface scattering."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:609
msgid "SSAO uses an implementation derived from Intel's `ASSAO <https://www.intel.com/content/www/us/en/developer/articles/technical/adaptive-screen-space-ambient-occlusion.html>`__ (converted to Vulkan). SSIL is derived from SSAO to provide high-performance indirect lighting."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:614
msgid "When both SSAO and SSIL are enabled, parts of SSAO and SSIL are shared to reduce the performance impact."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:617
msgid "SSAO and SSIL are performed at half resolution by default to improve performance. SSR is always performed at half resolution to improve performance."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:620
msgid "**Screen-space effects C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:622
msgid "`servers/rendering/renderer_rd/effects/ss_effects.cpp <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/effects/ss_effects.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:624
msgid "**Screen-space ambient occlusion GLSL shader:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:626
msgid "`servers/rendering/renderer_rd/shaders/effects/ssao.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/ssao.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:627
msgid "`servers/rendering/renderer_rd/shaders/effects/ssao_blur.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/ssao_blur.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:628
msgid "`servers/rendering/renderer_rd/shaders/effects/ssao_interleave.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/ssao_interleave.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:629
msgid "`servers/rendering/renderer_rd/shaders/effects/ssao_importance_map.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/ssao_importance_map.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:631
msgid "**Screen-space indirect lighting GLSL shader:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:633
msgid "`servers/rendering/renderer_rd/shaders/effects/ssil.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/ssil.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:634
msgid "`servers/rendering/renderer_rd/shaders/effects/ssil_blur.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/ssil_blur.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:635
msgid "`servers/rendering/renderer_rd/shaders/effects/ssil_interleave.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/ssil_interleave.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:636
msgid "`servers/rendering/renderer_rd/shaders/effects/ssil_importance_map.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/ssil_importance_map.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:638
msgid "**Screen-space reflections GLSL shader:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:640
msgid "`servers/rendering/renderer_rd/shaders/effects/screen_space_reflection.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/screen_space_reflection.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:641
msgid "`servers/rendering/renderer_rd/shaders/effects/screen_space_reflection_scale.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/screen_space_reflection_scale.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:642
msgid "`servers/rendering/renderer_rd/shaders/effects/screen_space_reflection_filter.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/screen_space_reflection_filter.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:644
msgid "**Subsurface scattering GLSL:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:646
msgid "`servers/rendering/renderer_rd/shaders/effects/subsurface_scattering.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/effects/subsurface_scattering.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:649
msgid "Sky rendering"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:653
msgid ":ref:`doc_sky_shader`"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:655
msgid "Godot supports using shaders to render the sky background. The radiance map (which is used to provide ambient light and reflections for PBR materials) is automatically updated based on the sky shader."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:659
msgid "The SkyMaterial resources such as ProceduralSkyMaterial, PhysicalSkyMaterial and PanoramaSkyMaterial generate a built-in shader for sky rendering. This is similar to what BaseMaterial3D provides for 3D scene materials."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:663
msgid "A detailed technical implementation can be found in the `Custom sky shaders in Godot 4.0 <https://godotengine.org/article/custom-sky-shaders-godot-4-0>`__ article."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:667
msgid "**Sky rendering C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:669
msgid "`servers/rendering/renderer_rd/environment/sky.cpp <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/environment/sky.cpp>`__ - Sky rendering"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:670
msgid "`scene/resources/sky.cpp <https://github.com/godotengine/godot/blob/4.0/scene/resources/sky.cpp>`__ - Sky resource (not to be confused with sky rendering)"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:671
msgid "`scene/resources/sky_material.cpp <https://github.com/godotengine/godot/blob/4.0/scene/resources/sky_material.cpp>`__ SkyMaterial resources (used in the Sky resource)"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:673
msgid "**Sky rendering GLSL shader:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:676
msgid "Volumetric fog"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:685
msgid ":ref:`doc_fog_shader`"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:687
msgid "Godot supports a frustum-aligned voxel (froxel) approach to volumetric fog rendering. As opposed to a post-processing filter, this approach is more general-purpose as it can work with any light type. Fog can also use shaders for custom behavior, which allows animating the fog or using a 3D texture to represent density."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:693
msgid "The FogMaterial resource generates a built-in shader for FogVolume nodes. This is similar to what BaseMaterial3D provides for 3D scene materials."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:696
msgid "A detailed technical explanation can be found in the `Fog Volumes arrive in Godot 4.0 <https://godotengine.org/article/fog-volumes-arrive-in-godot-4>`__ article."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:700
msgid "**Volumetric fog C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:702
msgid "`servers/rendering/renderer_rd/environment/fog.cpp <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/environment/fog.cpp>`__ - General volumetric fog"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:703
msgid "`scene/3d/fog_volume.cpp <https://github.com/godotengine/godot/blob/4.0/scene/3d/fog_volume.cpp>`__ - FogVolume node"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:704
msgid "`scene/resources/fog_material.cpp <https://github.com/godotengine/godot/blob/4.0/scene/resources/fog_material.cpp>`__ - FogMaterial resource (used by FogVolume)"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:706
msgid "**Volumetric fog GLSL shaders:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:708
msgid "`servers/rendering/renderer_rd/shaders/environment/volumetric_fog.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/environment/volumetric_fog.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:709
msgid "`servers/rendering/renderer_rd/shaders/environment/volumetric_fog_process.glsl <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_rd/shaders/environment/volumetric_fog_process.glsl>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:712
msgid "Occlusion culling"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:714
msgid "While modern GPUs can handle drawing a lot of triangles, the number of draw calls in complex scenes can still be a bottleneck (even with Vulkan and Direct3D 12)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:718
msgid "Godot 4 supports occlusion culling to reduce overdraw (when the depth prepass is disabled) and reduce vertex throughput. This is done by rasterizing a low-resolution buffer on the CPU using `Embree <https://github.com/embree/embree>`__. The buffer's resolution depends on the number of CPU threads on the system, as this is done in parallel. This buffer includes occluder shapes that were baked in the editor or created at run-time."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:726
msgid "As complex occluders can introduce a lot of strain on the CPU, baked occluders can be simplified automatically when generated in the editor."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:729
msgid "Godot's occlusion culling doesn't support dynamic occluders yet, but OccluderInstance3D nodes can still have their visibility toggled or be moved. However, this will be slow when updating complex occluders this way. Therefore, updating occluders at run-time is best done only on simple occluder shapes such as quads or cuboids."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:735
msgid "This CPU-based approach has a few advantages over other solutions, such as portals and rooms or a GPU-based culling solution:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:738
msgid "No manual setup required (but can be tweaked manually for best performance)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:739
msgid "No frame delay, which is problematic in cutscenes during camera cuts or when the camera moves fast behind a wall."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:741
msgid "Works the same on all rendering drivers and methods, with no unpredictable behavior depending on the driver or GPU hardware."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:744
msgid "Occlusion culling is performed by registering occluder meshes, which is done using OccluderInstance3D *nodes* (which themselves use Occluder3D *resources*). RenderingServer then performs occlusion culling by calling Embree in RendererSceneOcclusionCull."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:749
msgid "**Occlusion culling C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:751
msgid "`scene/3d/occluder_instance_3d.cpp <https://github.com/godotengine/godot/blob/4.0/scene/3d/occluder_instance_3d.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:752
msgid "`servers/rendering/renderer_scene_occlusion_cull.cpp <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_scene_occlusion_cull.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:755
msgid "Visibility range (LOD)"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:757
msgid "Godot supports manually authored hierarchical level of detail (HLOD), with distances specified by the user in the inspector."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:760
msgid "In RenderingSceneCull, the ``_scene_cull()`` and ``_render_scene()`` functions are where most of the LOD determination happens. Each viewport can render the same mesh with different LODs (to allow for split screen rendering to look correct)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:764
msgid "**Visibility range C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:766
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:797
msgid "`servers/rendering/renderer_scene_cull.cpp <https://github.com/godotengine/godot/blob/4.0/servers/rendering/renderer_scene_cull.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:769
msgid "Automatic mesh LOD"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:771
msgid "The ImporterMesh class is used for the 3D mesh import workflow in the editor. Its ``generate_lods()`` function handles generating using the `meshoptimizer <https://meshoptimizer.org/>`__ library."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:775
msgid "LOD mesh generation also generates shadow meshes at the same time. These are meshes that have their vertices welded regardless of smoothing and materials. This is used to improve shadow rendering performance by lowering the vertex throughput required to render shadows."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:780
msgid "The RenderingSceneCull class's ``_render_scene()`` function determines which mesh LOD should be used when rendering. Each viewport can render the same mesh with different LODs (to allow for split screen rendering to look correct)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:784
msgid "The mesh LOD is automatically chosen based on a screen coverage metric. This takes resolution and camera FOV changes into account without requiring user intervention. The threshold multiplier can be adjusted in the project settings."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:788
msgid "To improve performance, shadow rendering and reflection probe rendering also choose their own mesh LOD thresholds (which can be different from the main scene rendering)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:791
msgid "**Mesh LOD generation on import C++ code:**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:793
msgid "`scene/resources/importer_mesh.cpp <https://github.com/godotengine/godot/blob/4.0/scene/resources/importer_mesh.cpp>`__"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/internal_rendering_architecture.rst:795
msgid "**Mesh LOD determination C++ code:**"
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,273 +16,273 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/object_class.rst:4
#: ../../docs/contributing/development/core_and_modules/object_class.rst:4
msgid "Object class"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:8
#: ../../docs/contributing/development/core_and_modules/object_class.rst:8
msgid "This page describes the C++ implementation of objects in Godot. Looking for the Object class reference? :ref:`Have a look here. <class_Object>`"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:12
#: ../../docs/contributing/development/core_and_modules/object_class.rst:12
msgid "General definition"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:14
#: ../../docs/contributing/development/core_and_modules/object_class.rst:14
msgid ":ref:`Object <class_object>` is the base class for almost everything. Most classes in Godot inherit directly or indirectly from it. Objects provide reflection and editable properties, and declaring them is a matter of using a single macro like this."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:26
#: ../../docs/contributing/development/core_and_modules/object_class.rst:26
msgid "This makes Objects gain a lot of functionality, like for example"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:36
#: ../../docs/development/cpp/object_class.rst:94
#: ../../docs/development/cpp/object_class.rst:266
#: ../../docs/development/cpp/object_class.rst:282
#: ../../docs/development/cpp/object_class.rst:303
#: ../../docs/development/cpp/object_class.rst:322
#: ../../docs/contributing/development/core_and_modules/object_class.rst:36
#: ../../docs/contributing/development/core_and_modules/object_class.rst:94
#: ../../docs/contributing/development/core_and_modules/object_class.rst:266
#: ../../docs/contributing/development/core_and_modules/object_class.rst:282
#: ../../docs/contributing/development/core_and_modules/object_class.rst:303
#: ../../docs/contributing/development/core_and_modules/object_class.rst:322
msgid "References:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:38
msgid "`core/object.h <https://github.com/godotengine/godot/blob/3.x/core/object.h>`__"
#: ../../docs/contributing/development/core_and_modules/object_class.rst:38
msgid "`core/object/object.h <https://github.com/godotengine/godot/blob/master/core/object/object.h>`__"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:41
#: ../../docs/contributing/development/core_and_modules/object_class.rst:41
msgid "Registering an Object"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:43
#: ../../docs/contributing/development/core_and_modules/object_class.rst:43
msgid "ClassDB is a static class that holds the entire list of registered classes that inherit from Object, as well as dynamic bindings to all their methods properties and integer constants."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:47
#: ../../docs/contributing/development/core_and_modules/object_class.rst:47
msgid "Classes are registered by calling:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:53
#: ../../docs/contributing/development/core_and_modules/object_class.rst:53
msgid "Registering it will allow the class to be instanced by scripts, code, or creating them again when deserializing."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:56
#: ../../docs/contributing/development/core_and_modules/object_class.rst:56
msgid "Registering as virtual is the same but it can't be instanced."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:62
#: ../../docs/contributing/development/core_and_modules/object_class.rst:62
msgid "Object-derived classes can override the static function ``static void _bind_methods()``. When one class is registered, this static function is called to register all the object methods, properties, constants, etc. It's only called once. If an Object derived class is instanced but has not been registered, it will be registered as virtual automatically."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:69
#: ../../docs/contributing/development/core_and_modules/object_class.rst:69
msgid "Inside ``_bind_methods``, there are a couple of things that can be done. Registering functions is one:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:76
#: ../../docs/contributing/development/core_and_modules/object_class.rst:76
msgid "Default values for arguments can be passed in reverse order:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:82
#: ../../docs/contributing/development/core_and_modules/object_class.rst:82
msgid "``D_METHOD`` is a macro that converts \"methodname\" to a StringName for more efficiency. Argument names are used for introspection, but when compiling on release, the macro ignores them, so the strings are unused and optimized away."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:87
#: ../../docs/contributing/development/core_and_modules/object_class.rst:87
msgid "Check ``_bind_methods`` of Control or Object for more examples."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:89
#: ../../docs/contributing/development/core_and_modules/object_class.rst:89
msgid "If just adding modules and functionality that is not expected to be documented as thoroughly, the ``D_METHOD()`` macro can safely be ignored and a string passing the name can be passed for brevity."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:96
msgid "`core/class_db.h <https://github.com/godotengine/godot/blob/3.x/core/class_db.h>`__"
#: ../../docs/contributing/development/core_and_modules/object_class.rst:96
msgid "`core/object/class_db.h <https://github.com/godotengine/godot/blob/master/core/object/class_db.h>`__"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:99
#: ../../docs/contributing/development/core_and_modules/object_class.rst:99
msgid "Constants"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:101
#: ../../docs/contributing/development/core_and_modules/object_class.rst:101
msgid "Classes often have enums such as:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:110
#: ../../docs/contributing/development/core_and_modules/object_class.rst:110
msgid "For these to work when binding to methods, the enum must be declared convertible to int, for this a macro is provided:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:117
#: ../../docs/contributing/development/core_and_modules/object_class.rst:117
msgid "The constants can also be bound inside ``_bind_methods``, by using:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:125
#: ../../docs/contributing/development/core_and_modules/object_class.rst:125
msgid "Properties (set/get)"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:127
#: ../../docs/contributing/development/core_and_modules/object_class.rst:127
msgid "Objects export properties, properties are useful for the following:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:129
#: ../../docs/contributing/development/core_and_modules/object_class.rst:129
msgid "Serializing and deserializing the object."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:130
#: ../../docs/contributing/development/core_and_modules/object_class.rst:130
msgid "Creating a list of editable values for the Object derived class."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:132
#: ../../docs/contributing/development/core_and_modules/object_class.rst:132
msgid "Properties are usually defined by the PropertyInfo() class. Usually constructed as:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:139
#: ../../docs/contributing/development/core_and_modules/object_class.rst:139
msgid "For example:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:145
#: ../../docs/contributing/development/core_and_modules/object_class.rst:145
msgid "This is an integer property, named \"amount\", hint is a range, range goes from 0 to 49 in steps of 1 (integers). It is only usable for the editor (edit value visually) but won't be serialized."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:149
#: ../../docs/contributing/development/core_and_modules/object_class.rst:149
msgid "Another example:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:155
#: ../../docs/contributing/development/core_and_modules/object_class.rst:155
msgid "This is a string property, can take any string but the editor will only allow the defined hint ones. Since no usage flags were specified, the default ones are PROPERTY_USAGE_STORAGE and PROPERTY_USAGE_EDITOR."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:159
#: ../../docs/contributing/development/core_and_modules/object_class.rst:159
msgid "There are plenty of hints and usage flags available in object.h, give them a check."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:162
#: ../../docs/contributing/development/core_and_modules/object_class.rst:162
msgid "Properties can also work like C# properties and be accessed from script using indexing, but this usage is generally discouraged, as using functions is preferred for legibility. Many properties are also bound with categories, such as \"animation/frame\" which also make indexing impossible unless using operator []."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:168
#: ../../docs/contributing/development/core_and_modules/object_class.rst:168
msgid "From ``_bind_methods()``, properties can be created and bound as long as set/get functions exist. Example:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:175
#: ../../docs/contributing/development/core_and_modules/object_class.rst:175
msgid "This creates the property using the setter and the getter."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:180
#: ../../docs/contributing/development/core_and_modules/object_class.rst:180
msgid "Binding properties using ``_set``/``_get``/``_get_property_list``"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:182
#: ../../docs/contributing/development/core_and_modules/object_class.rst:182
msgid "An additional method of creating properties exists when more flexibility is desired (i.e. adding or removing properties on context)."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:185
#: ../../docs/contributing/development/core_and_modules/object_class.rst:185
msgid "The following functions can be overridden in an Object derived class, they are NOT virtual, DO NOT make them virtual, they are called for every override and the previous ones are not invalidated (multilevel call)."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:197
#: ../../docs/contributing/development/core_and_modules/object_class.rst:197
msgid "This is also a little less efficient since ``p_property`` must be compared against the desired names in serial order."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:201
#: ../../docs/contributing/development/core_and_modules/object_class.rst:201
msgid "Dynamic casting"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:203
#: ../../docs/contributing/development/core_and_modules/object_class.rst:203
msgid "Godot provides dynamic casting between Object-derived classes, for example:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:213
#: ../../docs/contributing/development/core_and_modules/object_class.rst:213
msgid "If cast fails, NULL is returned. This system uses RTTI, but it also works fine (although a bit slower) when RTTI is disabled. This is useful on platforms where a small binary size is ideal, such as HTML5 or consoles (with low memory footprint)."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:219
#: ../../docs/contributing/development/core_and_modules/object_class.rst:219
msgid "Signals"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:221
msgid "Objects can have a set of signals defined (similar to Delegates in other languages). Connecting to them is rather easy:"
#: ../../docs/contributing/development/core_and_modules/object_class.rst:221
msgid "Objects can have a set of signals defined (similar to Delegates in other languages). This example shows how to connect to them:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:230
#: ../../docs/contributing/development/core_and_modules/object_class.rst:230
msgid "The method ``_node_entered_tree`` must be registered to the class using ``ClassDB::bind_method`` (explained before)."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:233
#: ../../docs/contributing/development/core_and_modules/object_class.rst:233
msgid "Adding signals to a class is done in ``_bind_methods``, using the ``ADD_SIGNAL`` macro, for example:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:241
#: ../../docs/contributing/development/core_and_modules/object_class.rst:241
msgid "Notifications"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:243
#: ../../docs/contributing/development/core_and_modules/object_class.rst:243
msgid "All objects in Godot have a :ref:`_notification <class_Object_method__notification>` method that allows it to respond to engine level callbacks that may relate to it. More information can be found on the :ref:`doc_godot_notifications` page."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:248
#: ../../docs/contributing/development/core_and_modules/object_class.rst:248
msgid "References"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:250
msgid ":ref:`Reference <class_reference>` inherits from Object and holds a reference count. It is the base for reference counted object types. Declaring them must be done using Ref<> template. For example:"
#: ../../docs/contributing/development/core_and_modules/object_class.rst:250
msgid ":ref:`RefCounted <class_RefCounted>` inherits from Object and holds a reference count. It is the base for reference counted object types. Declaring them must be done using Ref<> template. For example:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:262
#: ../../docs/contributing/development/core_and_modules/object_class.rst:262
msgid "``myref`` is reference counted. It will be freed when no more Ref<> templates point to it."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:268
msgid "`core/reference.h <https://github.com/godotengine/godot/blob/3.x/core/reference.h>`__"
#: ../../docs/contributing/development/core_and_modules/object_class.rst:268
msgid "`core/object/reference.h <https://github.com/godotengine/godot/blob/master/core/object/ref_counted.h>`__"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:271
#: ../../docs/contributing/development/core_and_modules/object_class.rst:271
msgid "Resources:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:273
#: ../../docs/contributing/development/core_and_modules/object_class.rst:273
msgid ":ref:`Resource <class_resource>` inherits from Reference, so all resources are reference counted. Resources can optionally contain a path, which reference a file on disk. This can be set with ``resource.set_path(path)``. This is normally done by the resource loader though. No two different resources can have the same path, attempt to do so will result in an error."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:279
#: ../../docs/contributing/development/core_and_modules/object_class.rst:279
msgid "Resources without a path are fine too."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:284
msgid "`core/resource.h <https://github.com/godotengine/godot/blob/3.x/core/resource.h>`__"
#: ../../docs/contributing/development/core_and_modules/object_class.rst:284
msgid "`core/io/resource.h <https://github.com/godotengine/godot/blob/master/core/io/resource.h>`__"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:287
#: ../../docs/contributing/development/core_and_modules/object_class.rst:287
msgid "Resource loading"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:289
#: ../../docs/contributing/development/core_and_modules/object_class.rst:289
msgid "Resources can be loaded with the ResourceLoader API, like this:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:295
#: ../../docs/contributing/development/core_and_modules/object_class.rst:295
msgid "If a reference to that resource has been loaded previously and is in memory, the resource loader will return that reference. This means that there can be only one resource loaded from a file referenced on disk at the same time."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:300
#: ../../docs/contributing/development/core_and_modules/object_class.rst:300
msgid "resourceinteractiveloader (TODO)"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:305
msgid "`core/io/resource_loader.h <https://github.com/godotengine/godot/blob/3.x/core/io/resource_loader.h>`__"
#: ../../docs/contributing/development/core_and_modules/object_class.rst:305
msgid "`core/io/resource_loader.h <https://github.com/godotengine/godot/blob/master/core/io/resource_loader.h>`__"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:308
#: ../../docs/contributing/development/core_and_modules/object_class.rst:308
msgid "Resource saving"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:310
#: ../../docs/contributing/development/core_and_modules/object_class.rst:310
msgid "Saving a resource can be done with the resource saver API:"
msgstr ""
#: ../../docs/development/cpp/object_class.rst:316
#: ../../docs/contributing/development/core_and_modules/object_class.rst:316
msgid "Instance will be saved. Sub resources that have a path to a file will be saved as a reference to that resource. Sub resources without a path will be bundled with the saved resource and assigned sub-IDs, like ``res://someresource.res::1``. This also helps to cache them when loaded."
msgstr ""
#: ../../docs/development/cpp/object_class.rst:324
msgid "`core/io/resource_saver.h <https://github.com/godotengine/godot/blob/3.x/core/io/resource_saver.h>`__"
#: ../../docs/contributing/development/core_and_modules/object_class.rst:324
msgid "`core/io/resource_saver.h <https://github.com/godotengine/godot/blob/master/core/io/resource_saver.h>`__"
msgstr ""
#: ../../docs/<rst_epilog>:0

View File

@@ -0,0 +1,406 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:4
msgid "Unit testing"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:6
msgid "Godot Engine allows to write unit tests directly in C++. The engine integrates the `doctest <https://github.com/onqtam/doctest>`_ unit testing framework which gives ability to write test suites and test cases next to production code, but since the tests in Godot go through a different ``main`` entry point, the tests reside in a dedicated ``tests/`` directory instead, which is located at the root of the engine source code."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:14
msgid "Platform and target support"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:16
msgid "C++ unit tests can be run on Linux, macOS, and Windows operating systems."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:18
msgid "Tests can only be run with editor ``tools`` enabled, which means that export templates cannot be tested currently."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:22
msgid "Running tests"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:24
msgid "Before tests can be actually run, the engine must be compiled with the ``tests`` build option enabled (and any other build option you typically use), as the tests are not compiled as part of the engine by default:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:32
msgid "Once the build is done, run the tests with a ``--test`` command-line option:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:38
msgid "The test run can be configured with the various doctest-specific command-line options. To retrieve the full list of supported options, run the ``--test`` command with the ``--help`` option:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:46
msgid "Any other options and arguments after the ``--test`` command are treated as arguments for doctest."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:51
msgid "Tests are compiled automatically if you use the ``dev_mode=yes`` SCons option. ``dev_mode=yes`` is recommended if you plan on contributing to the engine development as it will automatically treat compilation warnings as errors. The continuous integration system will fail if any compilation warnings are detected, so you should strive to fix all warnings before opening a pull request."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:59
msgid "Filtering tests"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:61
msgid "By default, all tests are run if you don't supply any extra arguments after the ``--test`` command. But if you're writing new tests or would like to see the successful assertions output coming from those tests for debugging purposes, you can run the tests of interest with the various filtering options provided by doctest."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:67
msgid "The wildcard syntax ``*`` is supported for matching any number of characters in test suites, test cases, and source file names:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:71
msgid "**Filter options**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:71
msgid "**Shorthand**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:71
msgid "**Examples**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:73
msgid "``--test-suite``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:73
msgid "``-ts``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:73
msgid "``-ts=\"*[GDScript]*\"``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:75
msgid "``--test-case``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:75
msgid "``-tc``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:75
msgid "``-tc=\"*[String]*\"``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:77
msgid "``--source-file``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:77
msgid "``-sf``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:77
msgid "``-sf=\"*test_color*\"``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:80
msgid "For instance, to run only the ``String`` unit tests, run:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:86
msgid "Successful assertions output can be enabled with the ``--success`` (``-s``) option, and can be combined with any combination of filtering options above, for instance:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:94
msgid "Specific tests can be skipped with corresponding ``-exclude`` options. As of now, some tests include random stress tests which take a while to execute. In order to skip those kind of tests, run the following command:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:103
msgid "Writing tests"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:105
msgid "Test suites represent C++ header files which must be included as part of the main test entry point in ``tests/test_main.cpp``. Most test suites are located directly under ``tests/`` directory."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:109
msgid "All header files are prefixed with ``test_``, and this is a naming convention which the Godot build system relies on to detect tests throughout the engine."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:112
msgid "Here's a minimal working test suite with a single test case written:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:132
msgid "The ``tests/test_macros.h`` header encapsulates everything which is needed for writing C++ unit tests in Godot. It includes doctest assertion and logging macros such as ``CHECK`` as seen above, and of course the definitions for writing test cases themselves."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:139
msgid "`tests/test_macros.h <https://github.com/godotengine/godot/blob/master/tests/test_macros.h>`_ source code for currently implemented macros and aliases for them."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:142
msgid "Test cases are created using ``TEST_CASE`` function-like macro. Each test case must have a brief description written in parentheses, optionally including custom tags which allow to filter the tests at run-time, such as ``[String]``, ``[Stress]`` etc."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:147
msgid "Test cases are written in a dedicated namespace. This is not required, but allows to prevent naming collisions for when other static helper functions are written to accommodate the repeating testing procedures such as populating common test data for each test, or writing parameterized tests."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:152
msgid "Godot supports writing tests per C++ module. For instructions on how to write module tests, refer to :ref:`doc_custom_module_unit_tests`."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:156
msgid "Assertions"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:158
msgid "A list of all commonly used assertions used throughout the Godot tests, sorted by severity."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:162
msgid "**Assertion**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:162
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:195
msgid "**Description**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:164
msgid "``REQUIRE``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:164
msgid "Test if condition holds true. Fails the entire test immediately if the condition does not hold true."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:166
msgid "``REQUIRE_FALSE``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:166
msgid "Test if condition does not hold true. Fails the entire test immediately if the condition holds true."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:168
msgid "``CHECK``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:168
msgid "Test if condition holds true. Marks the test run as failing, but allow to run other assertions."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:170
msgid "``CHECK_FALSE``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:170
msgid "Test if condition does not hold true. Marks the test run as failing, but allow to run other assertions."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:172
msgid "``WARN``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:172
msgid "Test if condition holds true. Does not fail the test under any circumstance, but logs a warning if something does not hold true."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:174
msgid "``WARN_FALSE``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:174
msgid "Test if condition does not hold true. Does not fail the test under any circumstance, but logs a warning if something holds true."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:177
msgid "All of the above assertions have corresponding ``*_MESSAGE`` macros, which allow to print optional message with rationale of what should happen."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:180
msgid "Prefer to use ``CHECK`` for self-explanatory assertions and ``CHECK_MESSAGE`` for more complex ones if you think that it deserves a better explanation."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:185
msgid "`doctest: Assertion macros <https://github.com/onqtam/doctest/blob/master/doc/markdown/assertions.md>`_."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:188
msgid "Logging"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:190
msgid "The test output is handled by doctest itself, and does not rely on Godot printing or logging functionality at all, so it's recommended to use dedicated macros which allow to log test output in a format written by doctest."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:195
msgid "**Macro**"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:197
msgid "``MESSAGE``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:197
msgid "Prints a message."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:199
msgid "``FAIL_CHECK``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:199
msgid "Marks the test as failing, but continue the execution. Can be wrapped in conditionals for complex checks."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:201
msgid "``FAIL``"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:201
msgid "Fails the test immediately. Can be wrapped in conditionals for complex checks."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:204
msgid "Different reporters can be chosen at run-time. For instance, here's how the output can be redirected to a XML file:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:213
msgid "`doctest: Logging macros <https://github.com/onqtam/doctest/blob/master/doc/markdown/logging.md>`_."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:216
msgid "Testing failure paths"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:218
msgid "Sometimes, it's not always feasible to test for an *expected* result. With the Godot development philosophy of that the engine should not crash and should gracefully recover whenever a non-fatal error occurs, it's important to check that those failure paths are indeed safe to execute without crashing the engine."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:223
msgid "*Unexpected* behavior can be tested in the same way as anything else. The only problem this creates is that the error printing shall unnecessarily pollute the test output with errors coming from the engine itself (even if the end result is successful)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:228
msgid "To alleviate this problem, use ``ERR_PRINT_OFF`` and ``ERR_PRINT_ON`` macros directly within test cases to temporarily disable the error output coming from the engine, for instance:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:244
msgid "Test tools"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:246
msgid "Test tools are advanced methods which allow you to run arbitrary procedures to facilitate the process of manual testing and debugging the engine internals."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:249
msgid "These tools can be run by supplying the name of a tool after the ``--test`` command-line option. For instance, the GDScript module implements and registers several tools to help the debugging of the tokenizer, parser, and compiler:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:259
msgid "If any such tool is detected, then the rest of the unit tests are skipped."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:261
msgid "Test tools can be registered anywhere throughout the engine as the registering mechanism closely resembles of what doctest provides while registering test cases using dynamic initialization technique, but usually these can be registered at corresponding ``register_types.cpp`` sources (per module or core)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:266
msgid "Here's an example of how GDScript registers test tools in ``modules/gdscript/register_types.cpp``:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:289
msgid "The custom command-line parsing can be performed by a test tool itself with the help of OS :ref:`get_cmdline_args<class_OS_method_get_cmdline_args>` method."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:293
msgid "Integration tests for GDScript"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:295
msgid "Godot uses doctest to prevent regressions in GDScript during development. There are several types of test scripts which can be written:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:298
msgid "tests for expected errors;"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:299
msgid "tests for warnings;"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:300
msgid "tests for features."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:302
msgid "Therefore, the process of writing integration tests for GDScript is the following:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:304
msgid "Pick a type of a test script you'd like to write, and create a new GDScript file under the ``modules/gdscript/tests/scripts`` directory within corresponding sub-directory."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:308
msgid "Write GDScript code. The test script must have a function called ``test()`` which takes no arguments. Such function will be called by the test runner. The test should not have any dependency unless it's part of the test too. Global classes (using ``class_name``) are registered before the runner starts, so those should work if needed."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:314
msgid "Here's an example test script:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:322
msgid "Generate ``*.out`` files to update the expected results from the output:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:328
msgid "You may add the ``--print-filenames`` option to see filenames as their test outputs are generated. If you are working on a new feature that is causing hard crashes, you can use this option to quickly find which test file causes the crash and debug from there."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:333
msgid "Run GDScript tests with:"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:339
msgid "This also accepts the ``--print-filenames`` option (see above)."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:341
msgid "If no errors are printed and everything goes well, you're done!"
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:345
msgid "Make sure the output does have the expected values before submitting a pull request. If ``--gdscript-generate-tests`` produces ``*.out`` files which are unrelated to newly added tests, you should revert those files back and only commit ``*.out`` files for new tests."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:352
msgid "The GDScript test runner is meant for testing the GDScript implementation, not for testing user scripts nor testing the engine using scripts. We recommend writing new tests for already resolved `issues related to GDScript at GitHub <https://github.com/godotengine/godot/issues?q=is%3Aissue+label%3Atopic%3Agdscript+is%3Aclosed>`_, or writing tests for currently working features."
msgstr ""
#: ../../docs/contributing/development/core_and_modules/unit_testing.rst:360
msgid "If your test case requires that there is no ``test()`` function present inside the script file, you can disable the runtime section of the test by naming the script file so that it matches the pattern ``*.notest.gd``. For example, \"test_empty_file.notest.gd\"."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,97 +16,97 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/variant_class.rst:4
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:4
msgid "Variant class"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:7
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:7
msgid "About"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:9
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:9
msgid "Variant is the most important datatype of Godot, it's the most important class in the engine. A Variant takes up only 20 bytes and can store almost any engine datatype inside of it. Variants are rarely used to hold information for long periods of time, instead they are used mainly for communication, editing, serialization and generally moving data around."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:16
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:16
msgid "A Variant can:"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:18
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:18
msgid "Store almost any datatype"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:19
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:19
msgid "Perform operations between many variants (GDScript uses Variant as its atomic/native datatype)."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:21
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:21
msgid "Be hashed, so it can be compared quickly to other variants"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:22
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:22
msgid "Be used to convert safely between datatypes"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:23
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:23
msgid "Be used to abstract calling methods and their arguments (Godot exports all its functions through variants)"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:25
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:25
msgid "Be used to defer calls or move data between threads."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:26
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:26
msgid "Be serialized as binary and stored to disk, or transferred via network."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:28
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:28
msgid "Be serialized to text and use it for printing values and editable settings."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:30
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:30
msgid "Work as an exported property, so the editor can edit it universally."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:31
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:31
msgid "Be used for dictionaries, arrays, parsers, etc."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:33
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:33
msgid "Basically, thanks to the Variant class, writing Godot itself was a much, much easier task, as it allows for highly dynamic constructs not common of C++ with little effort. Become a friend of Variant today."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:38
#: ../../docs/development/cpp/variant_class.rst:57
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:38
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:57
msgid "References:"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:40
msgid "`core/variant.h <https://github.com/godotengine/godot/blob/3.x/core/variant.h>`__"
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:40
msgid "`core/variant/variant.h <https://github.com/godotengine/godot/blob/master/core/variant/variant.h>`__"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:43
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:43
msgid "Containers: Dictionary and Array"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:45
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:45
msgid "Both are implemented using variants. A Dictionary can match any datatype used as key to any other datatype. An Array just holds an array of Variants. Of course, a Variant can also hold a Dictionary and an Array inside, making it even more flexible."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:50
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:50
msgid "Modifications to a container will modify all references to it. A Mutex should be created to lock it if multi threaded access is desired."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:54
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:54
msgid "Copy-on-write (COW) mode support for containers was dropped with Godot 3.0."
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:59
msgid "`core/dictionary.h <https://github.com/godotengine/godot/blob/3.x/core/dictionary.h>`__"
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:59
msgid "`core/variant/dictionary.h <https://github.com/godotengine/godot/blob/master/core/variant/dictionary.h>`__"
msgstr ""
#: ../../docs/development/cpp/variant_class.rst:60
msgid "`core/array.h <https://github.com/godotengine/godot/blob/3.x/core/array.h>`__"
#: ../../docs/contributing/development/core_and_modules/variant_class.rst:60
msgid "`core/variant/array.h <https://github.com/godotengine/godot/blob/master/core/variant/array.h>`__"
msgstr ""
#: ../../docs/<rst_epilog>:0

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,111 +16,111 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:4
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:4
msgid "C++ usage guidelines"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:7
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:7
msgid "Rationale"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:9
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:9
msgid "Since Godot 4.0, the C++ standard used throughout the codebase is a subset of **C++17**. While modern C++ brings a lot of opportunities to write faster, more readable code, we chose to restrict our usage of C++ to a subset for a few reasons:"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:14
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:14
msgid "It makes it easier to review code in online editors. This is because engine contributors don't always have access to a full-featured IDE while reviewing code."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:17
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:17
msgid "It makes the code easier to grasp for beginner contributors (who may not be professional C++ programmers). Godot's codebase is known to be easy to learn from, and we'd like to keep it that way."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:21
msgid "To get your pull request merged, it needs to follow the C++ usage guidelines outlined here. Of course, you can use features not allowed here in your own C++ modules or GDNative scripts."
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:21
msgid "To get your pull request merged, it needs to follow the C++ usage guidelines outlined here. Of course, you can use features not allowed here in your own C++ modules or GDExtensions."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:27
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:27
msgid "Prior to Godot 4.0, the C++ standard used throughout the codebase was C++03, with a handful of C++14 extensions. If you are contributing a pull request to the `3.x` branch rather than `master`, your code can't use C++17 features. Instead, your code must be able to be built with a C++14 compiler."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:32
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:32
msgid "The guidelines below don't apply to third-party dependencies, although we generally favor small libraries instead of larger solutions. See also :ref:`doc_best_practices_for_engine_contributors`."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:38
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:38
msgid "See :ref:`doc_code_style_guidelines` for formatting guidelines."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:41
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:41
msgid "Disallowed features"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:43
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:43
msgid "**Any feature not listed below is allowed.** Using features like ``constexpr`` variables and ``nullptr`` is encouraged when possible. Still, try to keep your use of modern C++ features conservative. Their use needs to serve a real purpose, such as improving code readability or performance."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:49
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:49
msgid "Standard Template Library"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:51
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:51
msgid "We don't allow using the `STL <https://en.wikipedia.org/wiki/Standard_Template_Library>`__ as Godot provides its own data types (among other things). See :ref:`doc_faq_why_not_stl` for more information."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:55
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:55
msgid "This means that pull requests should **not** use ``std::string``, ``std::vector`` and the like. Instead, use Godot's datatypes as described below:"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:58
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:58
msgid "Use ``String`` instead of ``std::string``."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:59
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:59
msgid "Use ``Vector`` instead of ``std::vector``. In some cases, ``LocalVector`` can be used as an alternative (ask core developers first)."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:61
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:61
msgid "Use ``Array`` instead of ``std::array``."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:65
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:65
msgid "Godot also has a List datatype (which is a linked list). While List is already used in the codebase, it typically performs worse than other datatypes like Vector and Array. Therefore, List should be avoided in new code unless necessary."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:70
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:70
msgid "``auto`` keyword"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:72
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:72
msgid "Please don't use the ``auto`` keyword for type inference. While it can avoid repetition, it can also lead to confusing code:"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:83
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:83
msgid "Keep in mind hover documentation often isn't readily available for pull request reviewers. Most of the time, reviewers will use GitHub's online viewer to review pull requests."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:87
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:87
msgid "We chose to forbid ``auto`` instead of allowing it on a case-by-case basis to avoid having to decide on difficult edge cases. Thank you for your understanding."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:91
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:91
msgid "Lambdas"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:93
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:93
msgid "Lambdas should be used conservatively when they make code effectively faster or simpler, and do not impede readability. Please ask before using lambdas in a pull request."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:98
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:98
msgid "``#pragma once`` directive"
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:100
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:100
msgid "To follow the existing style, please use standard ``#ifdef``-based include guards instead of ``#pragma once`` in new files."
msgstr ""
#: ../../docs/community/contributing/cpp_usage_guidelines.rst:105
#: ../../docs/contributing/development/cpp_usage_guidelines.rst:105
msgid "See :ref:`doc_code_style_guidelines_header_includes` for guidelines on sorting includes in C++ and Objective-C files."
msgstr ""

View File

@@ -0,0 +1,53 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/debugging/index.rst:2
msgid "Debugging and profiling"
msgstr ""
#: ../../docs/contributing/development/debugging/index.rst:4
msgid "This section contains pages that provide guidance if you're looking at the engine code trying to find an underlying issue or an optimization possibility."
msgstr ""
#: ../../docs/contributing/development/debugging/index.rst:17
msgid "Debugging the editor"
msgstr ""
#: ../../docs/contributing/development/debugging/index.rst:19
msgid "When working on the Godot editor keep in mind that by default the executable will start in the Project Manager mode. Opening a project from the Project Manager spawns a new process, which stops the debugging session. To avoid that you should launch directly into the project using ``-e`` and ``--path`` launch options."
msgstr ""
#: ../../docs/contributing/development/debugging/index.rst:25
msgid "For example, using ``gdb`` directly, you may do this:"
msgstr ""
#: ../../docs/contributing/development/debugging/index.rst:32
msgid "You can also run the editor directly from your project's folder. In that case, only the ``-e`` option is required."
msgstr ""
#: ../../docs/contributing/development/debugging/index.rst:41
msgid "You can learn more about these launch options and other command line arguments in the :ref:`command line tutorial <doc_command_line_tutorial>`."
msgstr ""
#: ../../docs/contributing/development/debugging/index.rst:44
msgid "If you're using a code editor or an IDE to debug Godot, check out our :ref:`configuration guides <doc_configuring_an_ide>`, which cover the setup process for building and debugging with your particular editor."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,31 +16,31 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/macos_debug.rst:2
#: ../../docs/contributing/development/debugging/macos_debug.rst:2
msgid "Debugging on macOS"
msgstr ""
#: ../../docs/development/cpp/macos_debug.rst:5
#: ../../docs/contributing/development/debugging/macos_debug.rst:5
msgid "Debugging Godot editor"
msgstr ""
#: ../../docs/development/cpp/macos_debug.rst:7
#: ../../docs/contributing/development/debugging/macos_debug.rst:7
msgid "Attaching a debugger to the signed macOS process requires the \"com.apple.security.get-task-allow\" entitlement, which is not enabled by default, since apps can't be notarized as long as it is enabled. If you want to debug an official build of the editor it should be re-signed with the proper entitlements."
msgstr ""
#: ../../docs/development/cpp/macos_debug.rst:10
#: ../../docs/contributing/development/debugging/macos_debug.rst:10
msgid "Create an ``editor.entitlements`` text file with the following contents:"
msgstr ""
#: ../../docs/development/cpp/macos_debug.rst:35
#: ../../docs/contributing/development/debugging/macos_debug.rst:35
msgid "Then use the following command to re-sign the editor::"
msgstr ""
#: ../../docs/development/cpp/macos_debug.rst:40
#: ../../docs/contributing/development/debugging/macos_debug.rst:40
msgid "Debugging exported project"
msgstr ""
#: ../../docs/development/cpp/macos_debug.rst:42
#: ../../docs/contributing/development/debugging/macos_debug.rst:42
msgid "To allow debugging, select the ``codesign\\debugging`` (``com.apple.security.get-task-allow``) entitlement during the export. When it is selected, notarization is not supported and should be disabled."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,199 +16,199 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/cpp/using_cpp_profilers.rst:4
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:4
msgid "Using C++ profilers"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:6
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:6
msgid "To optimize Godot's performance, you need to know what to optimize first. To this end, profilers are useful tools."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:11
msgid "There is a built-in GDScript profiler in the editor, but using C++ profiler may be useful in cases where the GDScript profiler is not accurate enough or is missing information due to bugs in the profiler."
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:11
msgid "There is a :ref:`built-in GDScript profiler <doc_the_profiler>` in the editor, but using C++ profiler may be useful in cases where the GDScript profiler is not accurate enough or is missing information due to bugs in the profiler."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:16
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:16
msgid "Recommended profilers"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:18
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:18
msgid "`VerySleepy <http://www.codersnotes.com/sleepy/>`__ (Windows only)"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:19
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:19
msgid "`HotSpot <https://github.com/KDAB/hotspot>`__ (Linux only)"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:20
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:20
msgid "`Xcode Instruments <https://developer.apple.com/xcode/>`__ (macOS only)"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:22
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:22
msgid "These profilers may not be the most powerful or flexible options, but their standalone operation and limited feature set tends to make them easier to use."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:26
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:26
msgid "Setting up Godot"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:28
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:28
msgid "To get useful profiling information, it is **absolutely required** to use a Godot build that includes debugging symbols. Official binaries do not include debugging symbols, since these would make the download size significantly larger."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:32
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:32
msgid "To get profiling data that best matches the production environment (but with debugging symbols), you should compile binaries with the ``production=yes debug_symbols=yes`` SCons options."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:35
msgid "It is possible to run a profiler on less optimized builds (e.g. ``target=debug`` without LTO), but results will naturally be less representative of real world conditions."
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:35
msgid "It is possible to run a profiler on less optimized builds (e.g. ``target=template_debug`` without LTO), but results will naturally be less representative of real world conditions."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:40
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:40
msgid "Do *not* strip debugging symbols on the binaries using the ``strip`` command after compiling the binaries. Otherwise, you will no longer get useful profiling information when running a profiler."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:45
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:45
msgid "Benchmarking startup/shutdown times"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:47
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:47
msgid "If you're looking into optimizing Godot's startup/shutdown performance, you can tell the profiler to use the ``--quit`` command line option on the Godot binary. This will exit Godot just after it finished starting. The ``--quit`` option works with ``--editor``, ``--project-manager`` or ``--path <path to project directory>`` (which runs a project directly)."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:55
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:55
msgid "See :ref:`doc_command_line_tutorial` for more command line arguments supported by Godot."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:59
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:59
msgid "Profiler-specific instructions"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:62
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:62
msgid "VerySleepy"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:64
msgid "Start the Godot editor or your project first. If you start the project manager, make sure to edit or run a project first. Otherwise, the profiler will not track the child process since the project manager will spawn a child process for every project edited or run."
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:64
msgid "Start the Godot editor or your project first. If you start the Project Manager, make sure to edit or run a project first. Otherwise, the profiler will not track the child process since the Project Manager will spawn a child process for every project edited or run."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:68
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:68
msgid "Open VerySleepy and select the Godot executable in the list of processes on the left:"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:72
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:72
msgid "Click the **Profile All** button on the right to start profiling."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:73
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:73
msgid "Perform the actions you wish to profile in the editor or project. When you're done, click **Stop** (*not* Abort)."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:74
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:74
msgid "Wait for the results window to appear."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:75
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:75
msgid "Once the results window appears, filter the view to remove external modules (such as the graphics driver). You can filter by module by finding a line whose **Module** matches the Godot executable name, right-clicking that line then choosing **Filter Module to <Godot executable name>** in the dropdown that appears."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:79
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:79
msgid "Your results window should now look something like this:"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:84
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:84
msgid "HotSpot"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:86
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:86
msgid "Open HotSpot. Click **Record Data**:"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:90
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:90
msgid "In the next window, specify the path to the Godot binary that includes debug symbols."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:91
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:91
msgid "Specify command line arguments to run a specific project, with or without the editor."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:92
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:92
msgid "The path to the working directory can be anything if an absolute path is used for the ``--path`` command line argument. Otherwise, it must be set to that the relative path to the project is valid."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:95
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:95
msgid "Make sure **Elevate Privileges** is checked if you have administrative privileges. While not essential for profiling Godot, this will ensure all events can be captured. Otherwise, some events may be missing in the capture. Your settings should now look something like this:"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:102
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:102
msgid "Click **Start Recording** and perform the actions you wish to profile in the editor/project."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:103
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:103
msgid "Quit the editor/project normally or use the **Stop Profiling** button in HotSpot to stop profiling early. Stopping profiling early can result in cleaner profiles if you're not interested in the engine's quit procedure."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:106
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:106
msgid "Click **View Results** and wait for the profiling visualization to be generated:"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:110
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:110
msgid "Use the tabs at the top to navigate between the different views. These views show the same data, but in different ways. The **Flame Graph** tab is a good way to see which functions take up the most time at a glance. These functions are therefore the most important ones to optimize, since optimizing them will improve performance the most."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:115
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:115
msgid "At the bottom of all tabs except **Summary**, you will also see a list of CPU threads started by the engine among with the CPU utilization for each thread. This lets you see threads that can be a bottleneck at a given point in time."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:123
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:123
msgid "If you don't want the startup procedure to be included in the profile, you can also attach HotSpot to a running process by clicking **Record Data** then setting the **Launch Application** dropdown option to **Attach To Process(es)**."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:128
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:128
msgid "This process attachment-based workflow is similar to the one used by VerySleepy."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:131
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:131
msgid "Xcode Instruments"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:133
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:133
msgid "Open Xcode. Select **Open Developer Tool** - **Instruments** from the **Xcode** app menu:"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:134
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:134
msgid "Double-click on **Time Profiler** in the **Instruments** window:"
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:138
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:138
msgid "In the Time Profiler window, click on the **Target** menu, select **Choose target...** and specify the path to the Godot binary, command line arguments and environment variables in the next window."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:144
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:144
msgid "You can also attach the Time Profiler to a running process by selecting it from the **Target** menu."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:147
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:147
msgid "Click the **Start an immediate mode recording** button to start profiling."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:151
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:151
msgid "Perform the actions you wish to profile in the editor or project. When you're done, click the **Stop** button."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:154
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:154
msgid "Wait for the results to appear."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:155
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:155
msgid "At the bottom of the window you will see a call tree for all CPU threads started, and the **Heaviest Stack Trace** overview."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:157
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:157
msgid "Select **Hide system libraries** in the **Call Tree** menu (at the bottom of window) to remove external modules."
msgstr ""
#: ../../docs/development/cpp/using_cpp_profilers.rst:159
#: ../../docs/contributing/development/debugging/using_cpp_profilers.rst:159
msgid "You can use the timeline at the top of the window to display details for the specific time period."
msgstr ""

View File

@@ -0,0 +1,202 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:4
msgid "Using sanitizers"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:7
msgid "What are sanitizers?"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:9
msgid "Sanitizers are static instrumentation tools that help find bugs that traditional debuggers usually cannot catch. This is particularly useful when combined with :ref:`doc_unit_testing` in continuous integration."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:13
msgid "Sanitizers can be used on Windows, macOS and Linux by using the Clang (LLVM), GCC or Visual Studio compilers. :ref:`Certain platforms <doc_using_sanitizers_platform_specific_sanitizers>` may also have their own sanitizers available. In situations where a single sanitizer is provided by several different compilers, remember that their output and behavior will differ slightly."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:21
msgid "Using sanitizers on Godot"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:23
msgid "Sanitizers **require** recompiling the binary. This means you cannot use official Godot binaries to run sanitizers."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:26
msgid "When :ref:`compiling <toc-devel-compiling>` with any of the sanitizers enabled, the resulting binary will have the ``.san`` suffix added to its name to distinguish it from a binary without sanitizers."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:30
msgid "There is a performance impact as many additional runtime checks need to be performed. Memory utilization will also increase. It is possible to enable certain combinations of multiple sanitizers in a single build. Beware of the performance impact when using multiple sanitizers at once though, as the resulting binary may be excessively slow."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:36
msgid "Certain options can be passed to sanitizers without having to recompile the binary using environment variables."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:42
msgid "Address sanitizer (ASAN)"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:44
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:77
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:120
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:146
msgid "Available in Clang and GCC."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:45
msgid "**Supported platforms:** Linux, macOS, Windows (Visual Studio), Web"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:46
msgid "`Clang ASAN documentation <https://clang.llvm.org/docs/AddressSanitizer.html>`__"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:48
msgid "The address sanitizer is generally the most frequently used sanitizer. It can diagnose issues such as buffer overruns and out-of-bounds access. If the engine crashes with a message such as ``free(): invalid pointer``, this is typically the result of a buffer overrun. (This message is printed by the C runtime, not Godot.)"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:54
msgid "In certain situations (such as detecting uninitialized memory reads), the address sanitizer doesn't suffice. The :ref:`doc_using_sanitizers_memory_sanitizer` should be used instead."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:58
msgid "It is also possible to detect use-after-return situations by specifying the ``ASAN_OPTIONS=detect_stack_use_after_return=1`` environment variable before *running* Godot (not when compiling it). This increases the address sanitizer's runtime overhead, so only enable this feature when you actually need it."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:63
msgid "To enable the address sanitizer in a Godot build, pass the ``use_asan=yes`` SCons option when compiling. Enabling ASAN generally makes the resulting binary about 2× slower."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:69
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:112
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:138
msgid "Due to a `design decision <https://stackoverflow.com/questions/36971902/why-cant-clang-enable-all-sanitizers/>`__, the address, memory and thread sanitizers are mutually exclusive. This means you can only use one of those sanitizers in a given binary."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:75
msgid "Leak sanitizer (LSAN)"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:78
msgid "**Supported platforms:** Linux, Web"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:79
msgid "`Clang LSAN documentation <https://clang.llvm.org/docs/LeakSanitizer.html>`__"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:81
msgid "The leak sanitizer can detect memory leaks, which are situations where memory that is no longer in use is never freed by the running program. This can potentially lead to out-of-memory situations if the program runs for long enough. Since Godot may run on :ref:`dedicated servers <doc_exporting_for_dedicated_servers>` for months or even years without a restart, it's important to fix memory leaks when they occur."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:88
msgid "To enable the leak sanitizer in a Godot build, pass the ``use_lsan=yes`` SCons option when compiling. Enabling LSAN only has a small performance overhead, but the program will be much slower to exit as leak detection occurs when the program exits."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:96
msgid "Memory sanitizer (MSAN)"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:98
msgid "Available in Clang only, not GCC."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:99
msgid "**Supported platforms:** Linux"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:100
msgid "`Clang MSAN documentation <https://clang.llvm.org/docs/MemorySanitizer.html>`__"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:102
msgid "The memory sanitizer complements the :ref:`doc_using_sanitizers_address_sanitizer`. Unlike the address sanitizer, the memory sanitizer can detect uninitialized memory reads."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:106
msgid "To enable the memory sanitizer in a Godot build, pass the ``use_msan=yes`` SCons option when compiling. Enabling MSAN generally makes the resulting binary about 3× slower."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:118
msgid "Thread sanitizer (TSAN)"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:121
msgid "**Supported platforms:** Linux, macOS"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:122
msgid "`Clang TSAN documentation <https://clang.llvm.org/docs/ThreadSanitizer.html>`__"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:124
msgid "The thread sanitizer is used to track down race conditions related to multithreading. A race condition is when multiple threads try to modify the same data at the same time. Since thread scheduling can be ordered in any fashion by the operating system, this leads to incorrect behavior that only occurs occasionally (and can be difficult to track as a result). To prevent a race condition, you need to add a lock to ensure only one thread can access the shared data at a given time."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:132
msgid "To enable the thread sanitizer in a Godot build, pass the ``use_tsan=yes`` SCons option when compiling. Enabling TSAN generally makes the resulting binary 10× slower, while also multiplying memory usage by an approximately 8× factor."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:144
msgid "Undefined behavior sanitizer (UBSAN)"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:147
msgid "**Supported platforms:** Linux, macOS, Web"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:148
msgid "`Clang UBSAN documentation <https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html>`__"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:150
msgid "The undefined behavior sanitizer is used to track down situations where the program exhibits random and unpredictable behavior. This is due to C/C++ code that is accepted by the compiler, but is not *correct*. Compiling with a different set of optimizations can also change the observed results of undefined behavior."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:156
msgid "To enable the undefined behavior sanitizer in a Godot build, pass the ``use_ubsan=yes`` SCons option when compiling. Enabling UBSAN only has a small performance overhead."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:163
msgid "Platform-specific sanitizers"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:166
msgid "Web"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:168
msgid "When :ref:`compiling for the Web <doc_compiling_for_web>`, there are 2 additional sanitizer SCons options available:"
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:171
msgid "``use_assertions=yes`` enables runtime Emscripten assertions, which can catch various issues."
msgstr ""
#: ../../docs/contributing/development/debugging/using_sanitizers.rst:173
msgid "``use_safe_heap=yes`` enables `Emscripten's SAFE_HEAP sanitizer <https://emscripten.org/docs/debugging/Sanitizers.html>`__. It provides similar functionality to ASAN, but it focuses on issues that are specific to WebAssembly. ``SAFE_HEAP`` is not guaranteed to be compatible with ASAN and UBSAN in the same binary, so you may have to build it separately."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/index.rst:2
msgid "Compiling"
#: ../../docs/contributing/development/debugging/vulkan/index.rst:2
msgid "Vulkan"
msgstr ""
#: ../../docs/<rst_epilog>:0

View File

@@ -0,0 +1,178 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:4
msgid "Validation layers"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:6
msgid "Validation layers enable developers to verify their application's correct use of the Vulkan API. Validation layers can be enabled in both debug and release builds, including in exported projects."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:12
msgid "Enabling validation layers has a performance impact, so only enable them when you actually need the output to debug the application."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:16
msgid "Windows"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:18
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:44
msgid "Install the Vulkan SDK `<https://vulkan.lunarg.com/sdk/home>`__, which contains validation layers as part of its default installation. No need to enable any optional features in the installer; installing the core Vulkan SDK suffices. You don't need to reboot after installing the SDK, but you may need to close and reopen your current terminal."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:24
msgid "After installing the Vulkan SDK, run Godot with the ``--gpu-validation`` :ref:`command line argument <doc_command_line_tutorial>`. You can also specify ``--gpu-abort`` which will make Godot quit as soon as a validation error happens. This can prevent your system from freezing if a validation error occurs."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:30
msgid "macOS"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:34
msgid "Official Godot macOS builds do **not** support validation layers, as these are statically linked against the Vulkan SDK. Dynamic linking must be used instead."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:38
msgid "In practice, this means that using validation layers on macOS **requires** you to use a Godot build compiled with the ``use_volk=yes`` SCons option. :ref:`doc_compiling_for_macos`. If testing validation layers on an exported project, you must recompile the export template and specify it as a custom export template in your project's macOS export preset."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:50
msgid "After installing the Vulkan SDK, run a Godot binary that was compiled with ``use_volk=yes`` SCons option. Specify the ``--gpu-validation`` :ref:`command line argument <doc_command_line_tutorial>`. You can also specify ``--gpu-abort`` which will make Godot quit as soon as a validation error happens. This can prevent your system from freezing if a validation error occurs."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:58
msgid "Linux, \\*BSD"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:60
msgid "Install Vulkan validation layers from your distribution's repositories:"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:64
msgid "Alpine Linux"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:70
msgid "Arch Linux"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:76
msgid "Debian/Ubuntu"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:82
msgid "Fedora"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:88
msgid "FreeBSD"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:94
msgid "Gentoo"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:100
msgid "Mageia"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:106
msgid "OpenBSD"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:112
msgid "openSUSE"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:118
msgid "Solus"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:124
msgid "You don't need to reboot after installing the validation layers, but you may need to close and reopen your current terminal."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:127
msgid "After installing the package, run Godot with the ``--gpu-validation`` :ref:`command line argument <doc_command_line_tutorial>`. You can also specify ``--gpu-abort`` which will make Godot quit as soon as a validation error happens. This can prevent your system from freezing if a validation error occurs."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:135
msgid "Android"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:137
msgid "After enabling validation layers on Android, a developer can see errors and warning messages in the ``adb logcat`` output."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:141
msgid "iOS"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:143
msgid "Validation layers are currently **not** supported on iOS."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:146
msgid "Web"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:148
msgid "Validation layers are **not** supported on the web platform, as there is no support for Vulkan there."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:152
msgid "Enabling validation layers"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:155
msgid "Build validation layers from official sources"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:157
msgid "To build Android libraries, follow the instructions on `Khronos' repository <https://github.com/KhronosGroup/Vulkan-ValidationLayers/blob/master/BUILD.md#building-on-android>`__. After a successful build, the libraries will be located in ``Vulkan-ValidationLayers/build-android/libs``."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:162
msgid "Copy libraries"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:164
msgid "Copy libraries from ``Vulkan-ValidationLayers/build-android/libs`` to ``godot/platform/android/java/app/libs/debug/vulkan_validation_layers``."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:167
msgid "Your Godot source directory tree should look like on the example below::"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:182
msgid "If the subdirectory ``libs/debug/vulkan_validation_layers`` doesn't exist, create it."
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:185
msgid "Compile and run the Android app"
msgstr ""
#: ../../docs/contributing/development/debugging/vulkan/vulkan_validation_layers.rst:187
msgid "Linked validation layers are automatically loaded and enabled in Android debug builds. You can use Godot's :ref:`doc_one-click_deploy` feature to quickly test your project with the validation layers enabled."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,111 +16,111 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/editor/creating_icons.rst:4
#: ../../docs/contributing/development/editor/creating_icons.rst:4
msgid "Editor icons"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:6
#: ../../docs/contributing/development/editor/creating_icons.rst:6
msgid "When a new class is created and exposed to scripting, the editor's interface will display it with a default icon representing the base class it inherits from. In most cases, it's still recommended to create icons for new classes to improve the user experience."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:12
#: ../../docs/contributing/development/editor/creating_icons.rst:12
msgid "Creating icons"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:14
#: ../../docs/contributing/development/editor/creating_icons.rst:14
msgid "To create new icons, you first need a vector graphics editor installed. For instance, you can use the open source `Inkscape <https://inkscape.org/>`_ editor."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:17
#: ../../docs/contributing/development/editor/creating_icons.rst:17
msgid "Clone the ``godot`` repository containing all the editor icons:"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:23
#: ../../docs/contributing/development/editor/creating_icons.rst:23
msgid "The icons must be created in a vector graphics editor in SVG format. There are two main requirements to follow:"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:26
#: ../../docs/contributing/development/editor/creating_icons.rst:26
msgid "Icons must be 16×16. In Inkscape, you can configure the document size in **File > Document Properties**."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:28
#: ../../docs/contributing/development/editor/creating_icons.rst:28
msgid "Lines should be snapped to pixels whenever possible to remain crisp at lower DPI. You can create a 16×16 grid in Inkscape to make this easier."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:31
#: ../../docs/contributing/development/editor/creating_icons.rst:31
msgid "Once you're satisfied with the icon's design, save the icon in the cloned repository's ``editor/icons`` folder. The icon name should match the intended name in a case-sensitive manner. For example, to create an icon for CPUParticles2D, name the file ``CPUParticles2D.svg``."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:37
#: ../../docs/contributing/development/editor/creating_icons.rst:37
msgid "Color conversion for light editor themes"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:39
msgid "If the user has configured their editor to use a light theme, Godot will convert the icon's colors based on a `set of predefined color mappings <https://github.com/godotengine/godot/blob/b9f2e57d6240346f1833fd0390de195c956299e7/editor/editor_themes.cpp#L122-L184>`__. This is to ensure the icon always displays with a sufficient contrast rate. Try to restrict your icon's color palette to colors found in the list above. Otherwise, your icon may become difficult to read on a light background."
#: ../../docs/contributing/development/editor/creating_icons.rst:39
msgid "If the user has configured their editor to use a light theme, Godot will convert the icon's colors based on a `set of predefined color mappings <https://github.com/godotengine/godot/blob/4.0.2-stable/editor/editor_themes.cpp#L60-L160>`__. This is to ensure the icon always displays with a sufficient contrast rate. Try to restrict your icon's color palette to colors found in the list above. Otherwise, your icon may become difficult to read on a light background."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:47
#: ../../docs/contributing/development/editor/creating_icons.rst:47
msgid "Icon optimization"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:49
#: ../../docs/contributing/development/editor/creating_icons.rst:49
msgid "Because the editor renders SVGs once at load time, they need to be small in size so they can be efficiently parsed. Editor icons must be first optimized before being added to the engine, to do so:"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:53
#: ../../docs/contributing/development/editor/creating_icons.rst:53
msgid "Install `svgcleaner <https://github.com/RazrFalcon/svgcleaner>`__ by downloading a binary from its `Releases tab <https://github.com/RazrFalcon/svgcleaner/releases/latest>`__ and placing it into a location in your ``PATH`` environment variable."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:58
#: ../../docs/contributing/development/editor/creating_icons.rst:58
msgid "Run the command below, replacing ``svg_source.svg`` with the path to your SVG file (which can be a relative or absolute path):"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:65
#: ../../docs/contributing/development/editor/creating_icons.rst:65
msgid "The ``--multipass`` switch improves compression, so make sure to include it. The optimized icon will be saved to ``svg_optimized.svg``. You can also change the destination parameter to any relative or absolute path you'd like."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:71
#: ../../docs/contributing/development/editor/creating_icons.rst:71
msgid "While this optimization step won't impact the icon's quality noticeably, it will still remove editor-only information such as guides. Therefore, it's recommended to keep the source SVG around if you need to make further changes."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:77
#: ../../docs/contributing/development/editor/creating_icons.rst:77
msgid "Integrating and sharing the icons"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:79
#: ../../docs/contributing/development/editor/creating_icons.rst:79
msgid "If you're contributing to the engine itself, you should make a pull request to add optimized icons to ``editor/icons`` in the main repository. Recompile the engine to make it pick up new icons for classes."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:83
#: ../../docs/contributing/development/editor/creating_icons.rst:83
msgid "It's also possible to create custom icons within a module. If you're creating your own module and don't plan to integrate it with Godot, you don't need to make a separate pull request for your icons to be available within the editor as they can be self-contained."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:88
#: ../../docs/contributing/development/editor/creating_icons.rst:88
msgid "For specific instructions on how to create module icons, refer to :ref:`Creating custom module icons<doc_custom_module_icons>`."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:92
#: ../../docs/contributing/development/editor/creating_icons.rst:92
msgid "Troubleshooting"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:94
#: ../../docs/contributing/development/editor/creating_icons.rst:94
msgid "If icons don't appear in the editor, make sure that:"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:96
#: ../../docs/contributing/development/editor/creating_icons.rst:96
msgid "Each icon's filename matches the naming requirement as described previously."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:98
#: ../../docs/contributing/development/editor/creating_icons.rst:98
msgid "``modules/svg`` is enabled (it should be enabled by default). Without it, icons won't appear in the editor at all."
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:102
#: ../../docs/contributing/development/editor/creating_icons.rst:102
msgid "References"
msgstr ""
#: ../../docs/development/editor/creating_icons.rst:104
#: ../../docs/contributing/development/editor/creating_icons.rst:104
msgid "`editor/icons <https://github.com/godotengine/godot/tree/master/editor/icons>`__"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,147 +16,147 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/editor/editor_style_guide.rst:4
#: ../../docs/contributing/development/editor/editor_style_guide.rst:4
msgid "Editor style guide"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:7
#: ../../docs/contributing/development/editor/editor_style_guide.rst:7
msgid "Introduction"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:9
#: ../../docs/contributing/development/editor/editor_style_guide.rst:9
msgid "Thanks for your interest in contributing to the Godot editor!"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:11
#: ../../docs/contributing/development/editor/editor_style_guide.rst:11
msgid "This page describes the grammar and writing style used throughout the Godot editor. Following this style guide will help your contribution get merged faster since there will be fewer review steps required."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:16
#: ../../docs/contributing/development/editor/editor_style_guide.rst:16
msgid "Writing style"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:18
#: ../../docs/contributing/development/editor/editor_style_guide.rst:18
msgid "**Write messages (errors, warnings, ...) as full sentences.** They should start with an uppercase letter and end with a period."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:20
#: ../../docs/contributing/development/editor/editor_style_guide.rst:20
msgid "**Try to keep sentences short.** This makes it more likely that their translations will be short as well, which is a good thing to avoid UI bugs."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:22
#: ../../docs/contributing/development/editor/editor_style_guide.rst:22
msgid "**Use contractions.** For example, use \"isn't\" instead of \"is not\". An exception to this rule can be made when you specifically want to emphasize one of the contraction's words."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:25
#: ../../docs/contributing/development/editor/editor_style_guide.rst:25
msgid "**Use double quotes in messages** (``\"\"``) instead of single quotes (``''``). Double quotes should be used to quote user input, file paths and possibly other things depending on the context."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:31
#: ../../docs/contributing/development/editor/editor_style_guide.rst:31
msgid "Try to follow the :ref:`doc_docs_writing_guidelines` in addition to the guidelines outlined above."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:35
#: ../../docs/contributing/development/editor/editor_style_guide.rst:35
msgid "Button and menu texts"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:37
#: ../../docs/contributing/development/editor/editor_style_guide.rst:37
msgid "Capitalize text in buttons and menu actions:"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:39
#: ../../docs/contributing/development/editor/editor_style_guide.rst:39
msgid "**Good:** *Open Editor Data Folder*"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:40
#: ../../docs/contributing/development/editor/editor_style_guide.rst:40
msgid "**Bad:** *Open editor data folder*"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:42
#: ../../docs/contributing/development/editor/editor_style_guide.rst:42
msgid "If a menu action opens a modal dialog, suffix it with an ellipsis (``...``)."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:44
#: ../../docs/contributing/development/editor/editor_style_guide.rst:44
msgid "**Good:** *Editor Settings...*"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:45
#: ../../docs/contributing/development/editor/editor_style_guide.rst:45
msgid "**Bad:** *Editor Settings*"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:48
#: ../../docs/contributing/development/editor/editor_style_guide.rst:48
msgid "Inspector sections"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:50
#: ../../docs/contributing/development/editor/editor_style_guide.rst:50
msgid "In general, don't create sections that contain less than 3 items. Sections that contain few items make it difficult to navigate the inspector, while missing the benefits of using sections such as folding."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:54
msgid "There are some valid exceptions for this, such as material features in :ref:`class_SpatialMaterial`."
#: ../../docs/contributing/development/editor/editor_style_guide.rst:54
msgid "There are some valid exceptions for this, such as material features in :ref:`class_StandardMaterial3D`."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:57
#: ../../docs/contributing/development/editor/editor_style_guide.rst:57
msgid "This advice also applies to the Project Settings and Editor Settings."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:60
#: ../../docs/contributing/development/editor/editor_style_guide.rst:60
msgid "Inspector performance hints"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:62
#: ../../docs/contributing/development/editor/editor_style_guide.rst:62
msgid "Enum properties that noticeably impact performance should have a performance hint associated. The hint should refer to the *absolute* performance impact, rather than being relative to the other options provided in the enum. Here are some examples taken from the Godot editor:"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:67
#: ../../docs/contributing/development/editor/editor_style_guide.rst:67
msgid "**Screen-space antialiasing:** *Disabled (Fastest), FXAA (Fast)*"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:68
#: ../../docs/contributing/development/editor/editor_style_guide.rst:68
msgid "**MSAA quality:** *Disabled (Fastest), 2x (Fast), 4x (Average), 8x (Slow), 16x (Slower)*"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:70
#: ../../docs/contributing/development/editor/editor_style_guide.rst:70
msgid "**DirectionalLight mode:** *Orthogonal (Fast), PSSM 2 Splits (Average), PSSM 4 Splits (Slow)*"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:73
#: ../../docs/contributing/development/editor/editor_style_guide.rst:73
msgid "For consistency, try to stick to the terms below (from fastest to slowest):"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:75
#: ../../docs/contributing/development/editor/editor_style_guide.rst:75
msgid "*Fastest, Faster, Fast, Average, Slow, Slower, Slowest*"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:77
#: ../../docs/contributing/development/editor/editor_style_guide.rst:77
msgid "Their usage doesn't have to be contiguous. For example, you can use only \"Fast\" and \"Slow\" from the list above."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:80
#: ../../docs/contributing/development/editor/editor_style_guide.rst:80
msgid "If you're adding a new enum, its values should be ordered from the fastest option to the slowest option."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:84
#: ../../docs/contributing/development/editor/editor_style_guide.rst:84
msgid "Tooltips"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:86
#: ../../docs/contributing/development/editor/editor_style_guide.rst:86
msgid "Consider adding tooltips whenever the action performed by a button or menu action isn't obvious. You can also provide additional context or highlight caveats in the tooltip."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:90
#: ../../docs/contributing/development/editor/editor_style_guide.rst:90
msgid "You can do this by calling ``set_tooltip(TTR(\"Text here.\"))`` on the Control-based node in question. If the tooltip is particularly long (more than ~80 characters), wrap it over several lines by adding line breaks using ``\\n``."
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:94
#: ../../docs/contributing/development/editor/editor_style_guide.rst:94
msgid "Tooltips should follow the writing style described above. In addition to this, use indicative mood instead of imperative mood:"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:97
#: ../../docs/contributing/development/editor/editor_style_guide.rst:97
msgid "**Good:** *Computes global illumination for the selected GIProbe.*"
msgstr ""
#: ../../docs/development/editor/editor_style_guide.rst:98
#: ../../docs/contributing/development/editor/editor_style_guide.rst:98
msgid "**Bad:** *Compute global illumination for the selected GIProbe.*"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/editor/index.rst:2
#: ../../docs/contributing/development/editor/index.rst:2
msgid "Editor development"
msgstr ""

View File

@@ -0,0 +1,129 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:4
msgid "Introduction to editor development"
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:6
msgid "On this page, you will learn:"
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:8
msgid "The **design decisions** behind the Godot editor."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:9
msgid "How to work efficiently on the Godot editor's C++ code."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:11
msgid "This guide is aimed at current or future engine contributors. To create editor plugins in GDScript, see :ref:`doc_making_plugins` instead."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:16
msgid "If you are new to Godot, we recommended you to read :ref:`doc_godot_design_philosophy` before continuing. Since the Godot editor is a Godot project written in C++, much of the engine's philosophy applies to the editor."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:22
msgid "Technical choices"
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:24
msgid "The Godot editor is drawn using Godot's renderer and :ref:`UI system <doc_user_interface>`. It does *not* rely on a toolkit such as GTK or Qt. This is similar in spirit to software like Blender. While using toolkits makes it easier to achieve a \"native\" appearance, they are also quite heavy and their licensing is not compatible with Godot's."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:30
msgid "The editor is fully written in C++. It can't contain any GDScript or C# code."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:33
msgid "Directory structure"
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:35
msgid "The editor's code is fully self-contained in the `editor/ <https://github.com/godotengine/godot/tree/master/editor>`__ folder of the Godot source repository."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:39
msgid "Some editor functionality is also implemented via :ref:`modules <doc_custom_modules_in_cpp>`. Some of these are only enabled in editor builds to decrease the binary size of export templates. See the `modules/ <https://github.com/godotengine/godot/tree/master/modules>`__ folder in the Godot source repository."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:45
msgid "Some important files in the editor are:"
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:47
msgid "`editor/editor_node.cpp <https://github.com/godotengine/godot/blob/master/editor/editor_node.cpp>`__: Main editor initialization file. Effectively the \"main scene\" of the editor."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:49
msgid "`editor/project_manager.cpp <https://github.com/godotengine/godot/blob/master/editor/project_manager.cpp>`__: Main Project Manager initialization file. Effectively the \"main scene\" of the Project Manager."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:51
msgid "`editor/plugins/canvas_item_editor_plugin.cpp <https://github.com/godotengine/godot/blob/master/editor/plugins/canvas_item_editor_plugin.cpp>`__: The 2D editor viewport and related functionality (toolbar at the top, editing modes, overlaid helpers/panels, …)."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:53
msgid "`editor/plugins/node_3d_editor_plugin.cpp <https://github.com/godotengine/godot/blob/master/editor/plugins/node_3d_editor_plugin.cpp>`__: The 3D editor viewport and related functionality (toolbar at the top, editing modes, overlaid panels, …)."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:55
msgid "`editor/plugins/node_3d_editor_gizmos.cpp <https://github.com/godotengine/godot/blob/master/editor/plugins/node_3d_editor_gizmos.cpp>`__: Where the 3D editor gizmos are defined and drawn. This file doesn't have a 2D counterpart as 2D gizmos are drawn by the nodes themselves."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:60
msgid "Editor dependencies in ``scene/`` files"
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:62
msgid "When working on an editor feature, you may have to modify files in Godot's GUI nodes, which you can find in the ``scene/`` folder."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:65
msgid "One rule to keep in mind is that you must **not** introduce new dependencies to ``editor/`` includes in other folders such as ``scene/``. This applies even if you use ``#ifdef TOOLS_ENABLED``."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:69
msgid "To make the codebase easier to follow and more self-contained, the allowed dependency order is:"
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:72
msgid "``editor/`` -> ``scene/`` -> ``servers/`` -> ``core/``"
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:74
msgid "This means that files in ``editor/`` can depend on includes from ``scene/``, ``servers/``, and ``core/``. But, for example, while ``scene/`` can depend on includes from ``servers/`` and ``core/``, it cannot depend on includes from ``editor/``."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:78
msgid "Currently, there are some dependencies to ``editor/`` includes in ``scene/`` files, but `they are in the process of being removed <https://github.com/godotengine/godot/issues/53295>`__."
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:83
msgid "Development tips"
msgstr ""
#: ../../docs/contributing/development/editor/introduction_to_editor_development.rst:85
msgid "To iterate quickly on the editor, we recommend to set up a test project and :ref:`open it from the command line <doc_command_line_tutorial>` after compiling the editor. This way, you don't have to go through the Project Manager every time you start Godot."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,15 +16,15 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/file_formats/gdscript_grammar.rst:4
#: ../../docs/contributing/development/file_formats/gdscript_grammar.rst:6
msgid "GDScript grammar"
msgstr ""
#: ../../docs/development/file_formats/gdscript_grammar.rst:6
#: ../../docs/contributing/development/file_formats/gdscript_grammar.rst:8
msgid "This is the formal grammar of GDScript written in `EBNF <https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form>`_, for reference purposes."
msgstr ""
#: ../../docs/development/file_formats/gdscript_grammar.rst:9
#: ../../docs/contributing/development/file_formats/gdscript_grammar.rst:11
msgid "This grammar is descriptive only, derived from the reference documentation and current implementation. The GDScript parser is **not** generated from a grammar definition. Inconsistencies here likely mean an error in this grammar, not a bug in GDScript."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/file_formats/index.rst:2
#: ../../docs/contributing/development/file_formats/index.rst:2
msgid "Godot file formats"
msgstr ""

View File

@@ -0,0 +1,431 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/file_formats/tscn.rst:4
msgid "TSCN file format"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:6
msgid "The TSCN (text scene) file format represents a single scene tree inside Godot. Unlike binary SCN files, TSCN files have the advantage of being mostly human-readable and easy for version control systems to manage."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:10
msgid "The ESCN (exported scene) file format is identical to the TSCN file format, but is used to indicate to Godot that the file has been exported from another program and should not be edited by the user from within Godot. Unlike SCN and TSCN files, during import, ESCN files are compiled to binary SCN files stored inside the ``.godot/imported/`` folder. This reduces the data size and speeds up loading, as binary formats are faster to load compared to text-based formats."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:18
msgid "To make files more compact, properties equal to the default value are not stored in scene/resource files. It is possible to write them manually, but they will be discarded when saving the file."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:22
msgid "For those looking for a complete description, the parsing is handled in the file `resource_format_text.cpp <https://github.com/godotengine/godot/blob/master/scene/resources/resource_format_text.cpp>`_ in the ``ResourceFormatLoaderText`` class."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:28
msgid "The scene and resource file formats have changed significantly in Godot 4, with the introduction of string-based UIDs to replace incremental integer IDs."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:32
msgid "Mesh, skeleton and animation data is also stored differently compared to Godot 3. You can read about some of the changes in this article: `Animation data rework for 4.0 <https://godotengine.org/article/animation-data-redesign-40/>`__"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:36
msgid "Scenes and resources saved with Godot 4.x contain ``format=3`` in their header, whereas Godot 3.x uses ``format=2`` instead."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:40
msgid "File structure"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:42
msgid "There are five main sections inside the TSCN file:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:44
msgid "File descriptor"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:45
#: ../../docs/contributing/development/file_formats/tscn.rst:279
msgid "External resources"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:46
#: ../../docs/contributing/development/file_formats/tscn.rst:304
msgid "Internal resources"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:47
msgid "Nodes"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:48
msgid "Connections"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:50
msgid "The file descriptor looks like ``[gd_scene load_steps=4 format=3 uid=\"uid://cecaux1sm7mo0\"]`` and should be the first entry in the file. The ``load_steps`` parameter is equal to the total amount of resources (internal and external) plus one (for the file itself). If the file has no resources, ``load_steps`` is omitted. The engine will still load the file correctly if ``load_steps`` is incorrect, but this will affect loading bars and any other piece of code relying on that value."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:57
msgid "``uid`` is an unique string-based identifier representing the scene. This is used by the engine to track files that are moved around, even while the editor is closed. Scripts can also load UID-based resources using the ``uid://`` path prefix to avoid relying on filesystem paths. This makes it possible to move around a file in the project, but still be able to load it in scripts without having to modify the script. Godot does not use external files to keep track of IDs, which means no central metadata storage location is required within the project. See `this pull request <https://github.com/godotengine/godot/pull/50786>`__ for detailed information."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:67
msgid "These sections should appear in order, but it can be hard to distinguish them. The only difference between them is the first element in the heading for all of the items in the section. For example, the heading of all external resources should start with ``[ext_resource ...]``."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:72
msgid "A TSCN file may contain single-line comments starting with a semicolon (``;``). However, comments will be discarded when saving the file using the Godot editor. Whitespace within a TSCN file is not significant (except within strings), but extraneous whitespace will be discarded when saving the file."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:78
msgid "Entries inside the file"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:80
msgid "A heading looks like ``[<resource_type> key1=value1 key2=value2 key3=value3 ...]`` where resource_type is one of:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:84
msgid "``ext_resource``"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:85
msgid "``sub_resource``"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:86
msgid "``node``"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:87
msgid "``connection``"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:89
msgid "Below every heading comes zero or more ``key = value`` pairs. The values can be complex datatypes such as Arrays, Transforms, Colors, and so on. For example, a Node3D looks like:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:99
msgid "The scene tree"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:101
msgid "The scene tree is made up of… nodes! The heading of each node consists of its name, parent and (most of the time) a type. For example: ``[node name=\"PlayerCamera\" type=\"Camera\" parent=\"Player/Head\"]``"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:105
msgid "Other valid keywords include:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:107
msgid "``instance``"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:108
msgid "``instance_placeholder``"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:109
msgid "``owner``"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:110
msgid "``index`` (sets the order of appearance in the tree; if absent, inherited nodes will take precedence over plain ones)"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:111
msgid "``groups``"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:113
msgid "The first node in the file, which is also the scene root, must **not** have a ``parent=\"Path/To/Node\"`` entry in its heading. All scene files should have exactly *one* scene root. If it doesn't, Godot will fail to import the file. The parent path of other nodes should be absolute, but shouldn't contain the scene root's name. If the node is a direct child of the scene root, the path should be ``\".\"``. Here is an example scene tree (but without any node content):"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:130
msgid "To make the file structure easier to grasp, you can saving a file with any given node or resource then inspect it yourself in an external editor. You can also make incremental changes in the Godot editor, and keep an external text editor open on the ``.tscn`` or ``.tres`` file with auto-reload enabled to see what changes."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:136
msgid "Here is an example of a scene containing a RigidBody3D-based ball with collision, visuals (mesh + light) and a camera parented to the RigidBody3D:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:167
msgid "NodePath"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:169
msgid "A tree structure is not enough to represent the whole scene. Godot uses a ``NodePath(Path/To/Node)`` structure to refer to another node or attribute of the node anywhere in the scene tree. Paths are relative to the current node, with ``NodePath(\".\")`` pointing to the current node and ``NodePath(\"\")`` pointing to no node at all."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:175
msgid "For instance, MeshInstance3D uses ``NodePath()`` to point to its skeleton. Likewise, Animation tracks use ``NodePath()`` to point to node properties to animate."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:179
msgid "NodePath can also point to a property using a ``:property_name`` suffix, and even point to a specific component for vector, transform and color types. This is used by Animation resources to point to specific properties to animate. For example, ``NodePath(\"MeshInstance3D:scale.x\")`` points to the ``x`` component of the ``scale`` Vector3 property in MeshInstance3D."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:185
msgid "For example, the ``skeleton`` property in the MeshInstance3D node called ``mesh`` points to its parent, ``Armature01``:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:194
msgid "Skeleton3D"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:196
msgid "The :ref:`class_Skeleton3D` node inherits the Node3D node, but may alsohave a list of bones described in key-value pairs in the format ``bones/<id>/<attribute> = value``. The bone attributes consist of:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:200
msgid "``position``: Vector3"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:201
msgid "``rotation``: Quaternion"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:202
msgid "``scale``: Vector3"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:204
msgid "These attributes are all optional. For instance, a bone may only define ``position`` or ``rotation`` without defining the other properties."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:207
msgid "Here's an example of a skeleton node with two bones:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:219
msgid "BoneAttachment3D"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:221
msgid "The :ref:`class_BoneAttachment3D` node is an intermediate node to describe some node being parented to a single bone in a Skeleton node. The BoneAttachment has a ``bone_name = \"name of bone\"`` property, as well as a property for the matching bone index."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:226
msgid "An example of a :ref:`class_Marker3D` node parented to a bone in Skeleton:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:239
msgid "AnimationPlayer"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:241
msgid "The :ref:`class_AnimationPlayer` node works with one or more animation libraries stored in :ref:`class_AnimationLibrary` resources. An animation library is a collection of individual :ref:`class_Animation` resources, whose structure is documented :ref:`here <doc_tscn_animation>`."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:246
msgid "This split between animations themselves and animation libraries was done in Godot 4, so that animations can be imported separately from 3D meshes, which is a common workflow in 3D animation software. See the `original pull request <https://github.com/godotengine/godot/pull/59980>`__ for details."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:251
msgid "If the library name is empty, then it acts acts the unique source of animations for this AnimationPlayer. This allows using ``<animation_name>`` directly to play animations from script. If you name the library, then you must play it as ``<library_name>/<animation_name>``. This ensures backwards compatibility and keeps the existing workflow if you don't want to use multiple animation libraries."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:259
msgid "Resources"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:261
msgid "Resources are components that make up the nodes. For example, a MeshInstance3D node will have an accompanying ArrayMesh resource. The ArrayMesh resource may be either internal or external to the TSCN file."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:265
msgid "References to the resources are handled by unique string-based IDs in the resource's heading. This is different from the ``uid`` property, which each external resource also has (but subresources don't)."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:269
msgid "External resources and internal resources are referred to with ``ExtResource(\"id\")`` and ``SubResource(\"id\")``, respectively. Because there have different methods to refer to internal and external resources, you can have the same ID for both an internal and external resource."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:274
msgid "For example, to refer to the resource ``[ext_resource type=\"Material\" uid=\"uid://c4cp0al3ljsjv\" path=\"res://material.tres\" id=\"1_7bt6s\"]``, you would use ``ExtResource(\"1_7bt6s\")``."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:281
msgid "External resources are links to resources not contained within the TSCN file itself. An external resource consists of a path, a type, an UID (used to map its filesystem location to an unique identifier) and an ID (used to refer to the resource in the scene file)."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:286
msgid "Godot always generates absolute paths relative to the resource directory and thus prefixed with ``res://``, but paths relative to the TSCN file's location are also valid."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:290
msgid "Some example external resources are:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:297
msgid "Like TSCN files, a TRES file may contain single-line comments starting with a semicolon (``;``). However, comments will be discarded when saving the resource using the Godot editor. Whitespace within a TRES file is not significant (except within strings), but extraneous whitespace will be discarded when saving the file."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:306
msgid "A TSCN file can contain meshes, materials and other data. These are contained in the *internal resources* section of the file. The heading for an internal resource looks similar to those of external resources, except that it doesn't have a path. Internal resources also have ``key=value`` pairs under each heading. For example, a capsule collision shape looks like:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:318
msgid "Some internal resources contain links to other internal resources (such as a mesh having a material). In this case, the referring resource must appear *before* the reference to it. This means that order matters in the file's internal resources section."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:324
msgid "ArrayMesh"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:326
msgid "An ArrayMesh consists of several surfaces contained in the ``_surfaces`` array (notice the leading underscore). Each surface's data is stored in a dictionary with the following keys:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:330
msgid "``aabb``: The computed axis-aligned bounding box for visibility. ``Mesh.PrimitiveType`` Godot enum. ``0`` = points, ``1`` = lines, ``2`` = line strip, ``3`` = triangles (most common), ``4`` = triangle strip."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:333
msgid "``attribute_data``: Vertex attribute data, such as normals, tangents, vertex colors, UV1, UV2 and custom vertex data."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:335
msgid "``bone_aabbs``: The axis-aligned bounding box of each bone for visibility."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:336
msgid "``format``: The surface's buffer format."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:337
msgid "``index_count``: The number of indices in the surface. This must match ``index_data``'s size."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:339
msgid "``index_data``: The index data, which determines which vertices from ``vertex_data`` are drawn."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:341
msgid "``lods``: Level of detail variations, stored as an array. Each LOD level represents two values in the array. The first value is the percentage of screen space the LOD level is most suited for (edge length); the second value is the list of indices that should be drawn for the given LOD level."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:345
msgid "``material``: The material used when drawing the surface."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:346
msgid "``name``: The surface's name. This can be used in scripts and is imported from 3D DCCs."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:348
msgid "``primitive``: The surface's primitive type, matching the"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:349
msgid "``skin_data``: Bone weight data."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:350
msgid "``vertex_count``: Number of vertices in the surface. This must match ``vertex_data``'s size."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:351
msgid "``vertex_data``: The vertex position data."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:353
msgid "Here's an example of an ArrayMesh saved to its own ``.tres`` file. Some fields were shortened with ``...`` for brevity:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:383
msgid "Animation"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:385
msgid "Each animation has the following properties:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:387
msgid "``length``: The animation's length in seconds. Note that keyframes may be placed outside the ``[0; length]`` interval, but they may have no effect depending on the interpolation mode chosen."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:390
msgid "``loop_mode``: ``0`` = no looping, ``1`` = wrap-around looping, ``2`` = clamped looping."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:392
msgid "``step``: The step size to use when editing this animation in the editor. This is only used in the editor; it doesn't affect animation playback in any way."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:395
msgid "Each track is described by a list of key-value pairs in the format ``tracks/<id>/<attribute>``. Each track includes:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:398
msgid "``type``: The track's type. This defines what kind of properties may be animated by this track, and how it'll be exposed to the user in the editor. Valid types are ``value`` (generic property track), ``position_3d``, ``rotation_3d``, ``scale_3d``, ``blend_shape`` (optimized 3D animation tracks), ``method`` (method call tracks), ``bezier`` (Bezier curve tracks), ``audio`` (audio playback tracks), ``animation`` (tracks that play other animations)."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:405
msgid "``imported``: ``true`` if the track was created from an imported 3D scene, ``false`` if it was manually created by the user in the Godot editor or using a script."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:408
msgid "``enabled``: ``true`` if the track is effective, ``false`` if it was disabled in the editor."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:410
msgid "``path``: Path to the node property that will be affected by the track. The property is written after the node path with a ``:`` separator."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:412
msgid "``interp``: The interpolation mode to use. ``0`` = nearest, ``1`` = linear, ``2`` = cubic, ``3`` = linear angle, ``4`` = cubic angle."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:414
msgid "``loop_wrap``: ``true`` if the track is designed to wrap around when the animation is looping, ``false`` if the track clamps to the first/last keyframes."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:417
msgid "``keys``: The animation track's values. This attribute's structure depends on the ``type``."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:419
msgid "Here is a scene containing an AnimationPlayer that scales down a cube over time using a generic property track. The AnimationLibrary workflow was not used, so the animation library has an empty name (but the animation is still given a ``scale_down`` name). Note that the ``RESET`` track was not created in this AnimationPlayer for brevity:"
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:465
msgid "For generic property ``value`` tracks, ``keys`` is a dictionary containing 3 arrays with positions in ``times`` (PackedFloat32Array), easing values in ``transitions`` (PackedFloat32Array) and values in ``values`` (Array). There is an additional ``update`` property, which is an integer with the values ``0`` = continuous, ``1`` = discrete, ``2`` = capture."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:471
msgid "Here is a second Animation resource that makes use of the 3D Position and 3D Rotation tracks. These tracks (in addition to the 3D Scale track) replace Transform tracks from Godot 3. They are optimized for fast playback and can optionally be compressed."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:476
msgid "The downside of these optimized track types is that they can't use custom easing values. Instead, all keyframes use linear interpolation. That said, you can still opt for using nearest or cubic interpolation for all keyframes in a given track by changing the track's interpolation mode."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:503
msgid "For 3D position, rotation and scale tracks, ``keys`` is a PackedFloat32Array with all values stored in a sequence."
msgstr ""
#: ../../docs/contributing/development/file_formats/tscn.rst:506
msgid "In the visual guide below, ``T`` is the keyframe's time in seconds since the start of the animation, ``E`` is the keyframe's transition (currently always ``1``). For 3D position and scale tracks, ``X``, ``Y``, ``Z`` are the Vector3's coordinates. For 3D rotation tracks, ``X``, ``Y``, ``Z`` and ``W`` are the Quaternion's coordinates."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/development/index.rst:4
msgid "Engine development"
msgstr ""
#: ../../docs/contributing/development/index.rst:6
msgid "The guides below explain how to contribute to the engine's codebase. You will learn about best practices when working on solutions and features, the code style and the internal structure of the codebase, how to set up your working environment, and more."
msgstr ""
#: ../../docs/contributing/development/index.rst:10
msgid "Be sure to also check the :ref:`workflow guidelines <doc_contributing_workflow>`, especially if you're new to using Git or GitHub."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,151 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/documentation/building_the_manual.rst:4
msgid "Building the manual with Sphinx"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:6
msgid "This page explains how to build a local copy of the Godot manual using the Sphinx docs engine. This allows you to have local HTML files and build the documentation as a PDF, EPUB, or LaTeX file, for example."
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:10
msgid "Before you get started, make sure that you have:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:12
msgid "`Git <https://git-scm.com/>`_"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:13
msgid "`make <https://www.gnu.org/software/make/>`_ (unless you're using Windows)"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:14
msgid "`Python <https://www.python.org/>`_ 3"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:16
msgid "Python 3 should come with the ``pip3`` command. You may need to write ``python3 -m pip`` (Unix) or ``py -m pip`` (Windows) instead of ``pip3``. If both approaches fail, `make sure that you have pip3 installed <https://pip.pypa.io/en/stable/installation/>`__."
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:21
msgid "*(Optional)* Set up a virtual environment. Virtual environments prevent potential conflicts between the Python packages in ``requirements.txt`` and other Python packages that are installed on your system."
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:25
msgid "Create the virtual environment:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:29
#: ../../docs/contributing/documentation/building_the_manual.rst:45
#: ../../docs/contributing/documentation/building_the_manual.rst:61
#: ../../docs/contributing/documentation/building_the_manual.rst:145
msgid "Windows"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:35
#: ../../docs/contributing/documentation/building_the_manual.rst:51
#: ../../docs/contributing/documentation/building_the_manual.rst:67
#: ../../docs/contributing/documentation/building_the_manual.rst:151
msgid "Other platforms"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:41
msgid "Activate the virtual environment:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:57
msgid "*(Optional)* Update pre-installed packages:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:73
msgid "Clone the docs repo:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:79
msgid "Change directory into the docs repo:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:85
msgid "Install the required packages:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:91
msgid "Build the docs:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:98
msgid "On Windows, that command will run ``make.bat`` instead of GNU Make (or an alternative)."
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:100
msgid "Alternatively, you can build the documentation by running the sphinx-build program manually:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:106
msgid "The compilation will take some time as the ``classes/`` folder contains hundreds of files. See :ref:`doc_building_the_manual:performance`."
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:109
msgid "You can then browse the documentation by opening ``_build/html/index.html`` in your web browser."
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:113
msgid "Dealing with errors"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:115
msgid "If you run into errors, you may try the following command:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:121
msgid "If you get a ``MemoryError`` or ``EOFError``, you can remove the ``classes/`` folder and run ``make`` again. This will drop the class references from the final HTML documentation but will keep the rest intact."
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:127
msgid "If you delete the ``classes/`` folder, do not use ``git add .`` when working on a pull request or the whole ``classes/`` folder will be removed when you commit. See `#3157 <https://github.com/godotengine/godot-docs/issues/3157>`__ for more detail."
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:134
msgid "Hints for performance"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:137
msgid "RAM usage"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:139
msgid "Building the documentation requires at least 8 GB of RAM to run without disk swapping, which slows it down. If you have at least 16 GB of RAM, you can speed up compilation by running:"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:157
msgid "You can use ``-j auto`` to use all available CPU threads, but this can use a lot of RAM if you have a lot of CPU threads. For instance, on a system with 32 CPU threads, ``-j auto`` (which corresponds to ``-j 32`` here) can require 20+ GB of RAM for Sphinx alone."
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:163
msgid "Specifying a list of files"
msgstr ""
#: ../../docs/contributing/documentation/building_the_manual.rst:165
msgid "You can specify a list of files to build, which can greatly speed up compilation:"
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,475 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/documentation/class_reference_primer.rst:4
msgid "Class reference primer"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:6
msgid "This page explains how to write the class reference. You will learn where to write new descriptions for the classes, methods, and properties for Godot's built-in node types."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:12
msgid "To learn to submit your changes to the Godot project using the Git version control system, see :ref:`doc_updating_the_class_reference`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:15
msgid "The reference for each class is contained in an XML file like the one below:"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:65
msgid "It starts with brief and long descriptions. In the generated docs, the brief description is always at the top of the page, while the long description lies below the list of methods, variables, and constants. You can find methods, member variables, constants, and signals in separate XML nodes."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:70
msgid "For each, you want to learn how they work in Godot's source code. Then, fill their documentation by completing or improving the text in these tags:"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:73
msgid "`<brief_description>`"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:74
msgid "`<description>`"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:75
#: ../../docs/contributing/documentation/class_reference_primer.rst:80
msgid "`<constant>`"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:76
msgid "`<method>` (in its `<description>` tag; return types and arguments don't take separate documentation strings)"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:78
msgid "`<member>`"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:79
msgid "`<signal>` (in its `<description>` tag; arguments don't take separate documentation strings)"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:82
msgid "Write in a clear and simple language. Always follow the :ref:`writing guidelines <doc_docs_writing_guidelines>` to keep your descriptions short and easy to read. **Do not leave empty lines** in the descriptions: each line in the XML file will result in a new paragraph, even if it is empty."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:90
msgid "How to edit class XML"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:92
msgid "Edit the file for your chosen class in ``doc/classes/`` to update the class reference. The folder contains an XML file for each class. The XML lists the constants and methods you will find in the class reference. Godot generates and updates the XML automatically."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:97
msgid "For some modules in the engine's source code, you'll find the XML files in the ``modules/<module_name>/doc_classes/`` directory instead."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:100
msgid "Edit it using your favorite text editor. If you use a code editor, make sure that it doesn't change the indent style: you should use tabs for the XML and four spaces inside BBCode-style blocks. More on that below."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:104
msgid "To check that the modifications you've made are correct in the generated documentation, navigate to the ``doc/`` folder and run the command ``make rst``. This will convert the XML files to the online documentation's format and output errors if anything's wrong."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:109
msgid "Alternatively, you can build Godot and open the modified page in the built-in code reference. To learn how to compile the engine, read the :ref:`compilation guide <toc-devel-compiling>`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:113
msgid "We recommend using a code editor that supports XML files like Vim, Atom, Visual Studio Code, Notepad++, or another to comfortably edit the file. You can also use their search feature to find classes and properties quickly."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:119
msgid "If you use Visual Studio Code, you can install the `vscode-xml extension <https://marketplace.visualstudio.com/items?itemName=redhat.vscode-xml>`__ to get linting for class reference XML files."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:126
msgid "Improve formatting with BBCode style tags"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:128
msgid "Godot's XML class reference supports BBCode-like tags for linking as well as formatting text and code. In the tables below you can find the available tags, usage examples and the results after conversion to reStructuredText."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:132
msgid "Linking"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:134
msgid "Whenever you link to a member of another class, you need to specify the class name. For links to the same class, the class name is optional and can be omitted."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:138
#: ../../docs/contributing/documentation/class_reference_primer.rst:173
#: ../../docs/contributing/documentation/class_reference_primer.rst:195
msgid "Tag and Description"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:138
#: ../../docs/contributing/documentation/class_reference_primer.rst:173
#: ../../docs/contributing/documentation/class_reference_primer.rst:195
msgid "Example"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:138
#: ../../docs/contributing/documentation/class_reference_primer.rst:173
#: ../../docs/contributing/documentation/class_reference_primer.rst:195
msgid "Result"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[Class]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Link to class"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:140
msgid "``Move the [Sprite2D].``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:140
msgid "Move the :ref:`class_Sprite2D`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[annotation Class.name]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Link to annotation"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:143
msgid "``See [annotation @GDScript.@export].``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:143
msgid "See :ref:`@GDScript.@export <class_@GDScript_annotation_@export>`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[constant Class.name]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Link to constant"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:146
msgid "``See [constant @GlobalScope.KEY_F1].``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:146
msgid "See :ref:`@GlobalScope.KEY_F1 <class_@GlobalScope_constant_KEY_F1>`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[enum Class.name]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Link to enum"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:149
msgid "``See [enum Mesh.ArrayType].``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:149
msgid "See :ref:`Mesh.ArrayType <enum_Mesh_ArrayType>`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[method Class.name]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Link to method"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:152
msgid "``Call [method Node3D.hide].``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:152
msgid "Call :ref:`Node3D.hide() <class_Node3D_method_hide>`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[member Class.name]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Link to member"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:155
msgid "``Get [member Node2D.scale].``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:155
msgid "Get :ref:`Node2D.scale <class_Node2D_property_scale>`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[signal Class.name]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Link to signal"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:158
msgid "``Emit [signal Node.renamed].``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:158
msgid "Emit :ref:`Node.renamed <class_Node_signal_renamed>`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[theme_item Class.name]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Link to theme item"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:161
msgid "``See [theme_item Label.font].``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:161
msgid "See :ref:`Label.font <class_Label_theme_font_font>`."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:167
msgid "Currently only :ref:`class_@GDScript` has annotations."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:170
msgid "Formatting text"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[param name]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Formats a parameter name (as code)"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:175
msgid "``Takes [param size] for the size.``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:175
msgid "Takes ``size`` for the size."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[br]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Line break"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``Line 1.[br]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``Line 2.``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Line 1."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Line 2."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[b]`` ``[/b]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Bold"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:181
msgid "``Some [b]bold[/b] text.``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:181
msgid "Some **bold** text."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[i]`` ``[/i]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Italic"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:184
msgid "``Some [i]italic[/i] text.``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:184
msgid "Some *italic* text."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[kbd]`` ``[/kbd]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Keyboard/mouse shortcut"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:187
msgid "``Some [kbd]Ctrl + C[/kbd] key.``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:187
msgid "Some :kbd:`Ctrl + C` key."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:192
msgid "Formatting code"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[code]`` ``[/code]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Monospace"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:197
msgid "``Some [code]monospace[/code] text.``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:197
msgid "Some ``monospace`` text."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[codeblock]`` ``[/codeblock]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Multiline preformatted block"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:200
#: ../../docs/contributing/documentation/class_reference_primer.rst:200
#: ../../docs/contributing/documentation/class_reference_primer.rst:203
#: ../../docs/contributing/documentation/class_reference_primer.rst:203
#: ../../docs/contributing/documentation/class_reference_primer.rst:206
#: ../../docs/contributing/documentation/class_reference_primer.rst:206
#: ../../docs/contributing/documentation/class_reference_primer.rst:209
#: ../../docs/contributing/documentation/class_reference_primer.rst:209
msgid "*See below.*"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[codeblocks]`` ``[/codeblocks]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "Codeblock for multiple languages"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[gdscript]`` ``[/gdscript]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "GDScript codeblock tab in codeblocks"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "``[csharp]`` ``[/csharp]``"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:0
msgid "C# codeblock tab in codeblocks"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:215
msgid "``[code]`` disables BBCode until the parser encounters ``[/code]``."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:216
msgid "``[codeblock]`` disables BBCode until the parser encounters ``[/codeblock]``."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:220
msgid "Use ``[codeblock]`` for pre-formatted code blocks. Inside ``[codeblock]``, always use **four spaces** for indentation. The parser will delete tabs."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:223
msgid "For example:"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:233
msgid "Will display as:"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:241
msgid "If you need to have different code version in GDScript and C#, use ``[codeblocks]`` instead. If you use ``[codeblocks]``, you also need to have at least one of the language-specific tags, ``[gdscript]`` and ``[csharp]``."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:245
msgid "Always write GDScript code examples first! You can use this `experimental code translation tool <https://github.com/HaSa1002/codetranslator>`_ to speed up your workflow."
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:266
msgid "The above will display as:"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:283
msgid "To denote important information, add a paragraph starting with \"[b]Note:[/b]\" at the end of the description:"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:290
msgid "To denote crucial information that could cause security issues or loss of data if not followed carefully, add a paragraph starting with \"[b]Warning:[/b]\" at the end of the description:"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:298
msgid "For deprecated properties, add a paragraph starting with \"[i]Deprecated.[/i]\". Notice the use of italics instead of bold:"
msgstr ""
#: ../../docs/contributing/documentation/class_reference_primer.rst:305
msgid "In all the paragraphs described above, make sure the punctuation is part of the BBCode tags for consistency."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,113 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/documentation/content_guidelines.rst:4
msgid "Content guidelines"
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:6
msgid "This document outlines what should be included in the official documentation. Below, you will find a couple of principles and recommendations for writing accessible content."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:10
msgid "We want to achieve two goals:"
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:12
msgid "**Empathize with our users.** We should write in a way that makes it easy for them to learn from the docs."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:14
msgid "**Write a complete reference manual**. Our goal here is not to teach programming fundamentals. Instead, our goal is to provide a reference for how Godot's features work."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:19
msgid "Guidelines and principles"
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:21
msgid "Below are the guidelines we should strive to follow. They are not hard rules, though: sometimes, a topic will require breaking one or more of them. Still, we should strive to achieve the two goals listed above."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:26
msgid "Writing complete and accessible documentation"
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:28
msgid "**A feature doesn't exist unless it is documented**. If a user can't find information about a feature and how it works, it doesn't exist to them. We should ensure that we cover everything Godot does."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:34
msgid "When adding or updating an engine feature, the documentation team needs to know about it. Contributors should open an issue on the `godot-docs` repository when their work gets merged and requires documentation."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:38
msgid "Do your best to keep documents **under 1000 words in length**. If a page goes past that threshold, consider splitting it into two parts. Limiting page size forces us to write concisely and to break up large documents so that each page focuses on a particular problem."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:43
msgid "Each page or section of a page should clearly state what **problem** it tackles and what it will teach the user. Users need to know if they're reading the correct guide for solving the problems they're encountering. For example, instead of writing the heading \"Signals\", consider writing \"Reacting to changes with signals\". The second title makes it clear what the purpose of signals is."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:51
msgid "Long section titles lead to long entries in the side menu, which can make navigation cumbersome. Try to keep headings five words long or less."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:54
msgid "If the page assumes specific knowledge of other Godot features, mention it and link to the corresponding documentation. For instance, a page about physics may use signals, in which case you could note that the signals tutorial is a prerequisite. You may also link to other websites for prerequisites beyond the documentation's scope. For example, you could link to an introduction to programming in the getting started guide, or a website that teaches math theory in the math section."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:63
msgid "Limiting cognitive load"
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:65
msgid "Limit the cognitive load required to read the documentation. The simpler and more explicit language we use, the more efficient it becomes for people to learn. You can do so by:"
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:69
msgid "Introducing only one new concept at a time whenever possible."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:70
msgid "Using simple English, as we recommend in our writing guidelines."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:71
msgid "Including one or more **concrete usage examples**. Prefer a real-world example to one that uses names like ``foo``, ``bar``, or ``baz``."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:74
msgid "While many people may understand more complex language and abstract examples, you will lose others. Understandable writing and practical examples benefit everyone."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:78
msgid "Always make an effort to **put yourself in the user's shoes**. When we understand something thoroughly, it becomes obvious to us. We may fail to think about details relevant to a newcomer, but **good documentation meets users where they are**. We should explain each feature's capabilities or intended uses with the most straightforward language possible."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:84
msgid "Try to remember what you first needed to know when learning about the feature or concept. What new terms did you need to learn? What confused you? What was the hardest to grasp? You will want users to review your work, and we recommend you practice explaining the feature before writing about it."
msgstr ""
#: ../../docs/contributing/documentation/content_guidelines.rst:91
msgid "Programming fundamentals are a prerequisite for using a complex engine like Godot. Talking about variables, functions, or classes is acceptable. But we should favor plain language over specific terminology like \"metaprogramming\". If you need to use precise terms, be sure to define them."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,207 +16,215 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:4
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:4
msgid "Contributing to the documentation"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:6
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:6
msgid "This guide explains how to contribute to Godot's documentation, be it by writing or reviewing pages."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:11
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:11
msgid "If you want to translate pages or the class reference from English to other languages, read :ref:`doc_editor_and_docs_localization`."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:15
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:15
msgid "Getting started"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:17
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:17
msgid "To modify or create pages in the reference manual, you need to edit ``.rst`` files in the `godot-docs GitHub repository <https://github.com/godotengine/godot-docs>`_. Modifying those pages in a pull request triggers a rebuild of the online documentation upon merging."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:22
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:22
msgid "For details on Git usage and the pull request workflow, please refer to the :ref:`doc_pr_workflow` page. Most of what it describes regarding the main godotengine/godot repository is also valid for the docs repository."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:27
msgid "The class reference's source files are in the `Godot engine repository <https://github.com/godotengine/godot>`_. We generate the :ref:`Godot API <doc_class_reference>` section of this documentation from them. If you want to update the description of a class, its methods, or properties, read :ref:`doc_updating_the_class_reference`."
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:27
msgid "The class reference's source files are in the `Godot engine repository <https://github.com/godotengine/godot>`_. We generate the :ref:`Class Reference <doc_class_reference>` section of this documentation from them. If you want to update the description of a class, its methods, or properties, read :ref:`doc_updating_the_class_reference`."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:35
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:35
msgid "What is the Godot documentation"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:37
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:37
msgid "The Godot documentation is intended as a comprehensive reference manual for the Godot game engine. It is not meant to contain step-by-step tutorials, except for two game creation tutorials in the Getting Started section."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:41
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:41
msgid "We strive to write factual content in an accessible and well-written language. To contribute, you should also read:"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:44
msgid "The :ref:`doc_docs_writing_guidelines`. There, you will find rules and recommendations to write in a way that everyone understands."
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:44
msgid ":ref:`doc_docs_writing_guidelines`. There, you will find rules and recommendations to write in a way that everyone understands."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:46
msgid "The content guidelines. They explain the principles we follow to write the documentation and the kind of content we accept."
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:46
msgid ":ref:`doc_content_guidelines`. They explain the principles we follow to write the documentation and the kind of content we accept."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:50
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:50
msgid "Contributing changes"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:52
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:52
msgid "**Pull Requests should use the** ``master`` **branch by default.** Only make Pull Requests against other branches (e.g. ``2.1`` or ``3.0``) if your changes only apply to that specific version of Godot."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:56
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:56
msgid "Though less convenient to edit than a wiki, this Git repository is where we write the documentation. Having direct access to the source files in a revision control system is a plus to ensure our documentation quality."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:61
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:61
msgid "Editing existing pages"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:63
msgid "To edit an existing page, locate its ``.rst`` source file and open it in your favorite text editor. You can then commit the changes, push them to your fork, and make a pull request. **Note that the pages in** ``classes/`` **should not be edited here.** They are automatically generated from Godots `XML class reference <https://github.com/godotengine/godot/tree/master/doc/classes>`__. See :ref:`doc_updating_the_class_reference` for details."
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:63
msgid "To edit an existing page, locate its ``.rst`` source file and open it in your favorite text editor. You can then commit the changes, push them to your fork, and make a pull request. **Note that the pages in** ``classes/`` **should not be edited here.** They are automatically generated from Godot's `XML class reference <https://github.com/godotengine/godot/tree/master/doc/classes>`__. See :ref:`doc_updating_the_class_reference` for details."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:70
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:70
msgid "To build the manual and test changes on your computer, see :ref:`doc_building_the_manual`."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:74
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:74
msgid "Editing pages online"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:76
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:76
msgid "You can edit the documentation online by clicking the **Edit on GitHub** link in the top-right of every page."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:79
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:79
msgid "Doing so takes you to the GitHub text editor. You need to have a GitHub account and to log in to use it. Once logged in, you can propose change like so:"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:82
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:82
msgid "Click the **Edit on GitHub** button."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:84
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:84
msgid "On the GitHub page you're taken to, click the pencil icon in the top-right corner near the **Raw**, **Blame**, and **Delete** buttons. It has the tooltip \"Fork this project and edit the file\"."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:88
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:88
msgid "Edit the text in the text editor."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:90
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:90
msgid "At the bottom of the web page, summarize the changes you made and click the button **Propose file change**. Make sure to replace the placeholder \"Update file.rst\" by a short but clear one-line description, as this is the commit title."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:94
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:94
msgid "On the following screens, click the **Create pull request** button until you see a message like *Username wants to merge 1 commit into godotengine:master from Username:patch-1*."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:98
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:98
msgid "Another contributor will review your changes and merge them into the docs if they're good. They may also make changes or ask you to do so before merging."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:102
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:102
msgid "Adding new pages"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:104
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:104
msgid "Before adding a new page, please ensure that it fits in the documentation:"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:106
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:106
msgid "Look for `existing issues <https://github.com/godotengine/godot-docs/issues>`_ or open a new one to see if the page is necessary."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:109
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:109
msgid "Ensure there isn't a page that already covers the topic."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:110
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:110
msgid "Read our :ref:`doc_content_guidelines`."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:112
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:112
msgid "To add a new page, create a ``.rst`` file with a meaningful name in the section you want to add a file to, e.g. ``tutorials/3d/light_baking.rst``."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:115
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:115
msgid "You should then add your page to the relevant \"toctree\" (table of contents, e.g. ``tutorials/3d/index.rst``). Add your new filename to the list on a new line, using a relative path and no extension, e.g. here ``light_baking``."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:120
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:120
msgid "Titles"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:122
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:122
msgid "Always begin pages with their title and a Sphinx reference name:"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:131
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:131
msgid "The reference ``_doc_insert_your_title_here`` and the title should match."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:133
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:133
msgid "The reference allows linking to this page using the ``:ref:`` format, e.g. ``:ref:`doc_insert_your_title_here``` would link to the above example page (note the lack of leading underscore in the reference)."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:137
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:137
msgid "Write your titles like plain sentences, without capitalizing each word:"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:139
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:139
msgid "**Good:** Understanding signals in Godot"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:140
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:140
msgid "**Bad:** Understanding Signals In Godot"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:142
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:142
msgid "Only propers nouns, projects, people, and node class names should have their first letter capitalized."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:146
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:146
msgid "Sphinx and reStructuredText syntax"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:148
msgid "Check Sphinxs `reST Primer <https://www.sphinx-doc.org/en/stable/rest.html>`__ and the `official reference <http://docutils.sourceforge.net/rst.html>`__ for details on the syntax."
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:148
msgid "Check Sphinx's `reST Primer <https://www.sphinx-doc.org/en/stable/rest.html>`__ and the `official reference <https://docutils.sourceforge.net/rst.html>`__ for details on the syntax."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:152
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:152
msgid "Sphinx uses specific reST comments to do specific operations, like defining the table of contents (``.. toctree::``) or cross-referencing pages. Check the `official Sphinx documentation <https://www.sphinx-doc.org/en/stable/index.html>`__ for more details. To learn how to use Sphinx directives like ``.. note::`` or ``.. seealso::``, check out the `Sphinx directives documentation <https://www.sphinx-doc.org/en/master/usage/restructuredtext/directives.html>`__."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:161
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:161
msgid "Adding images and attachments"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:163
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:163
msgid "To add images, please put them in an ``img/`` folder next to the ``.rst`` file with a meaningful name and include them in your page with:"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:170
msgid "Similarly, you can include attachments, like assets as support material for a tutorial, by placing them into a ``files/`` folder next to the ``.rst`` file, and using this inline markup:"
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:170
msgid "Alternatively, you can use the `figure` directive, which gives the image a contrasting border and allows centering it on the page."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:180
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:178
msgid "You can also include attachments as support material for a tutorial, by placing them into a ``files/`` folder next to the ``.rst`` file, and using this inline markup:"
msgstr ""
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:185
msgid "Consider using the `godot-docs-project-starters <https://github.com/godotengine/godot-docs-project-starters>` repository for hosting support materials, such as project templates and asset packs. You can use a direct link to the generated archive from that repository with the regular link markup:"
msgstr ""
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:196
msgid "License"
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:182
msgid "This documentation and every page it contains is published under the terms of the `Creative Commons Attribution 3.0 license (CC-BY-3.0) <https://tldrlegal.com/license/creative-commons-attribution-(cc)>`_, with attribution to \"Juan Linietsky, Ariel Manzur and the Godot community\"."
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:198
msgid "This documentation and every page it contains is published under the terms of the `Creative Commons Attribution 3.0 license (CC BY 3.0) <https://creativecommons.org/licenses/by/3.0/>`_, with attribution to \"Juan Linietsky, Ariel Manzur and the Godot community\"."
msgstr ""
#: ../../docs/community/contributing/contributing_to_the_documentation.rst:187
#: ../../docs/contributing/documentation/contributing_to_the_documentation.rst:203
msgid "By contributing to the documentation on the GitHub repository, you agree that your changes are distributed under this license."
msgstr ""

View File

@@ -0,0 +1,145 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:4
msgid "Creating documentation images"
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:6
msgid "Throughout documentation images are often needed to make the explanation of a feature or concept as clear as possible for a reader. This page will explain the process from beginning to end."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:11
msgid "Capturing an image"
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:13
msgid "To take a picture of something in Godot a screen capture tool can be used."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:15
msgid "On Windows 10 and 11 that would be the Snip & Sketch program. Pressing :kbd:`Windows + Shift + S` lets you take a screenshot of a portion of the screen and save it to the clipboard. After pressing those keys, click and drag over the area you wish to take a picture of."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:21
msgid "On macOS, pressing :kbd:`Shift + Command + 3` does the same. To take a picture of the entire screen press :kbd:`Shift + Command + 4`. All screenshots taken will be saved to the desktop."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:25
msgid "Each Linux desktop environment has it's own screenshot tool. For example, on KDE Plasma the program Spectacle is used for taking screenshots. If your distribution doesn't come with one by default try searching its package repository, or Flathub if that's supported."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:30
msgid "All screenshots should ideally be taken on a 1080p screen. Anything higher resolution is adding detail that doesn't make the documentation better and dramatically increases file size. If you're taking screenshots on a higher resolution screen the screenshot should be scaled down. There are instructions on how to do this later on this page."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:37
msgid "Format conversion"
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:39
msgid "The current format for images in Godot's documentation is WebP (``.webp``). While some Linux programs will support saving screenshots in this format, macOS and the Snip & Sketch program on Windows do not. For images that don't need editing, such as precise cropping or adding outlines, Squoosh can be used. `Squoosh <https://squoosh.app/>`_ is a converter developed by Google, is open source, and doesn't give Google any image rights by using it. When choosing compression if you can get an image that's under 300KB in size use lossless compression. If it's over 300KB use just enough lossy compression to get it under that size. If this results in noticable compression artifacts using less compression is fine, even if the file size is bigger."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:50
msgid "If you already have an image editor such as GIMP, Krita or Photoshop installed it may have the ability to open an image then save it as a WebP file."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:54
msgid "Cropping"
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:56
msgid "For a screenshot of a 2D or 3D scene in the editor the above steps will be enough. But for most UI images some extra work should be done, specifically cropping to make an image look clean. Below is an example of good cropping."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:62
msgid "For cropping Krita is the recommended program. While some screenshot programs do have cropping built in it's not always easy to get something precise. And while Krita is designed as a painting program the cropping tool gives you pixel precision by default. Of course, feel free to use a different program you are familiar with."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:67
msgid "If you've never used Krita before download it from the `official Krita website <https://krita.org/en/download/krita-desktop/>`_, on Linux you may also be able to download it from your distributions repository, flathub is also an option. Once it's installed on your computer open Krita then open the image you want to crop. This button on the left panel is the crop tool."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:74
msgid "After selecting it, click on the image, you should now have cropping tools available."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:78
msgid "Click and drag the white boxes to adjust what gets cropped, if you zoom in close to the image you will see the individual pixels in an image, which is useful for precision."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:84
msgid "If you make a mistake and overcrop don't worry, cropping is non-destructive in Krita and can be adjusted. Click on the image with your cropping tool still selected and the controls will return."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:89
msgid "Scaling down an image"
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:91
msgid "As explained earlier on this page, all images taken on a screen that is a higher resolution than 1080p should be scaled down. To do this in Krita click on **Image** on the top bar, and from the dropdown menu select **Scale Image To New Size**. This menu can also be opened by pressing :kbd:`Ctrl + Alt + I`. On this menu you want to adjust the pixel dimensions. For anything taken on a 4K monitor change the value of the width and height to half of its current value, for anything taken on a 1440p monitor multiply the width and height by 0.75. Make sure the **Constrain Proportions** box at the bottom of the menu is checked so you only have to change 1 value."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:101
msgid "Saving as WebP in Krita"
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:103
msgid "To save an image as webp if it isn't already one, Go to **File > Save As**. Select **webp** from the **Save as type:** dropdown, then choose wherever you want to save it. After clicking **Save** a menu will popup with webp options. Make sure **Losses** is checked and **Quality** is set to 100%. This means the image will not lose detail and will be as small as possible."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:108
msgid "If the image is over 300KB in size try compressing it losslessly using `Squoosh <https://squoosh.app/>`_. If it's still over 300KB change to lossy compression and slowly increase the compression until it's under 300KB. If this results in noticable compression artifacts using less compression is fine, even if the file size is bigger."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:114
msgid "Outlines arrows and text"
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:116
msgid "Sometimes an image needs something extra to properly direct the readers attention, or make something clear. Outlines and arrows can be used for this purpose. For these types of edits Inkscape is the recommended open source program, it can be downloaded from the `official Inkscape website <https://inkscape.org/>`_. Like Krita, if you're on Linux you can also check your distributions repository or get it from Flathub."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:123
msgid "A full tutorial on creating outlines is not provided here, we recommend searching for various tutorials on how to use it online. However there are two standards for doc image outlines and arrows. First, the color should be yellow, specifically this hex color: ``fffb44`` (``fffb44ff`` if there is a transparency value like in Inkscape). This color was chosen specifically to make sure color blind people do not have issues reading the documentation, other colors can be used in addition to this yellow if multiple outlines on an image are needed, red should be avoided. The second standard is that all outlines and arrow lines should be 2 pixels wide."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:132
msgid "Finally, some images might require text to differentiate multiple parts of an image. There are no strict requirements other than use an easy to read non fancy font. As for color the yellow color from before should also be used, but black or other colors can be used if appropriate. For example, if yellow blends into the image, or if there are multiple outlines in multiple colors."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:139
msgid "Adding an image to a documentation page"
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:141
msgid "Once you've finished working on your image, it can be added to the documentation. All images are stored in folders named ``img`` next to the page they are used in."
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:144
msgid "To add your image, add it to the ``img`` folder that's in the same folder as the ``.rst`` file for the page (create it if it doesn't exist). In the ``.rst`` page, images should be included with the following code snippet::"
msgstr ""
#: ../../docs/contributing/documentation/docs_image_guidelines.rst:150
msgid "Where ``documentation_image.webp`` would be changed to the name of the image you created. Name your images in a way that makes their meaning clear, possibly with a prefix that makes their relationship to a documentation page explicit."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,484 +16,452 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/docs_writing_guidelines.rst:4
msgid "Docs writing guidelines"
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:4
msgid "Writing guidelines"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:6
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:6
msgid "The Godot community is rich and international. Users come from all around the world. Some of them are young, and many aren't native English speakers. That's why we must all write using a clear and a common language. For the class reference, the goal is to make it easy to read for everyone and precise."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:12
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:12
msgid "In summary, always try to:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:14
#: ../../docs/community/contributing/docs_writing_guidelines.rst:44
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:14
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:44
msgid "Use the active voice"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:15
#: ../../docs/community/contributing/docs_writing_guidelines.rst:79
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:15
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:79
msgid "Use precise action verbs"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:16
#: ../../docs/community/contributing/docs_writing_guidelines.rst:101
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:16
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:101
msgid "Avoid verbs that end in -ing"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:17
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:17
msgid "Remove unnecessary adverbs and adjectives."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:18
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:18
msgid "Ban these 8 words: obvious, simple, basic, easy, actual, just, clear, and however"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:19
#: ../../docs/community/contributing/docs_writing_guidelines.rst:219
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:19
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:219
msgid "Use explicit references"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:20
#: ../../docs/community/contributing/docs_writing_guidelines.rst:240
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:20
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:240
msgid "Use 's to show possession"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:21
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:21
msgid "Use the Oxford comma"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:23
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:23
msgid "There are 3 rules to describe classes:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:25
#: ../../docs/community/contributing/docs_writing_guidelines.rst:377
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:25
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:377
msgid "Give an overview of the node in the brief description"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:26
#: ../../docs/community/contributing/docs_writing_guidelines.rst:406
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:26
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:406
msgid "Mention what methods return if it's useful"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:27
#: ../../docs/community/contributing/docs_writing_guidelines.rst:431
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:27
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:431
msgid "Use \"if true\" to describe booleans"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:31
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:31
msgid "A technical writer's job is to pack as much information as possible into the smallest and clearest sentences possible. These guidelines will help you work towards that goal."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:37
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:37
msgid "See the :ref:`content guidelines <doc_content_guidelines>` for information on the types of documentation you can write in the official documentation."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:41
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:41
msgid "7 rules for clear English"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:46
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:46
msgid "Use the active voice when possible. Take the classes, methods, and constants you describe as the subject. It's natural to write using the passive voice, but it's harder to read and produces longer sentences."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:52
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:52
msgid "Passive:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:58
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:58
msgid "Active:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:64
#: ../../docs/community/contributing/docs_writing_guidelines.rst:412
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:64
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:412
msgid "**Don't** use the passive voice:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:71
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:71
msgid "**Do** use the node's name as a noun:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:81
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:81
msgid "Favor precise yet common verbs over generic ones like ``make``, ``set``, and any expression you can replace with a single word."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:84
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:84
msgid "**Don't** repeat the method's name. It already states it sets the pivot value to a new one:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:92
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:92
msgid "**Do** explain what's the consequence of this \"set\": use precise verbs like ``place``, ``position``, ``rotate``, ``fade``, etc."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:103
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:103
msgid "The progressive forms describe continuous actions. E.g. \"is calling\", \"is moving\"."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:106
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:106
msgid "**Don't** use the progressive form for instant changes."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:113
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:113
msgid "**Do** use simple present, past, or future."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:120
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:120
msgid "Exception: If the subject is not clear, replacing \"ing\" verbs is not an improvement. For example, in the previous sentence, \"it replaces\" would not make much sense where \"replacing\" currently is."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:124
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:124
msgid "You may use the progressive tense to describe actions that are continuous in time. Anything like animation or coroutines."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:129
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:129
msgid "Verbs can turn into adjectival nouns with -ing. This is not a conjugation, so you may use them: ``the remaining movement``, ``the missing file``, etc."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:134
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:134
msgid "Remove unnecessary adverbs and adjectives"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:136
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:136
msgid "Write as few adjectives and adverbs as possible. Only use them if they add key information to the description."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:139
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:139
msgid "**Don't** use redundant or meaningless adverbs. Words that lengthen the documentation but don't add any information:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:146
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:146
msgid "**Do** write short sentences in a simple, descriptive language:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:153
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:153
msgid "Ban these 8 words"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:155
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:155
msgid "**Don't** ever use these 8 banned words:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:157
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:157
msgid "obvious"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:158
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:158
msgid "simple"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:159
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:159
msgid "basic"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:160
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:160
msgid "easy"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:161
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:161
msgid "actual"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:162
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:162
msgid "just"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:163
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:163
msgid "clear"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:164
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:164
msgid "however (some uses)"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:166
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:166
msgid "Game creation and programming aren't simple, and nothing's easy to someone learning to use the API for the first time. Other words in the list, like ``just`` or ``actual`` won't add any info to the sentence. Don't use corresponding adverbs either: obviously, simply, basically, easily, actually, clearly."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:172
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:172
msgid "**Don't** example. The banned words lengthen the description and take attention away from the most important info:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:180
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:180
msgid "**Do** remove them:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:187
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:187
msgid "\"Simple\" never helps. Remember, for other users, anything could be complex or frustrate them. There's nothing like a good old *it's simple* to make you cringe. Here's the old brief description, the first sentence on the Timer node's page:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:197
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:197
msgid "**Do** explain what the node does instead:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:204
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:204
msgid "**Don't** use \"basic\", it is too vague:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:211
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:211
msgid "**Do** use the brief description to offer an overview of the node:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:221
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:221
msgid "Favor explicit references over implicit ones."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:223
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:223
msgid "**Don't** use words like \"the former\", \"the latter\", etc. They're not the most common in English, and they require you to check the reference."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:230
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:230
msgid "**Do** repeat words. They remove all ambiguity:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:236
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:236
msgid "If you need to repeat the same variable name 3 or 4 times, you probably need to rephrase your description."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:242
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:242
msgid "Avoid \"The milk **of** the cow\". It feels unnatural in English. Write \"The cow's milk\" instead."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:245
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:245
msgid "**Don't** write \"of the X\":"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:251
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:251
msgid "**Do** use ``'s``. It lets you put the main subject at the start of the sentence, and keep it short:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:259
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:259
msgid "Use the Oxford comma to enumerate anything"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:261
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:261
msgid "From the Oxford dictionary:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:263
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:263
msgid "The 'Oxford comma' is an optional comma before the word 'and' at the end of a list: *We sell books, videos, and magazines.*"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:266
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:266
msgid "[...] Not all writers and publishers use it, but it can clarify the meaning of a sentence when the items in a list are not single words: *These items are available in black and white, red and yellow, and blue and green.*"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:269
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:269
msgid "**Don't** leave the last element of a list without a comma:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:275
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:275
msgid "**Do** add a comma before `and` or `or`, for the last element of a list with more than two elements."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:284
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:284
msgid "How to write methods and classes"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:287
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:287
msgid "Dynamic vs static typing"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:289
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:289
msgid "The code examples in the documentation should follow a consistent style not to confuse users. As static type hints are an optional feature of GDScript, we chose to stick to writing dynamic code. This leads to writing GDScript that is concise and accessible."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:294
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:294
msgid "The exception is topics that explain static typing concepts to users."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:296
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:296
msgid "**Don't** add a type hint with a colon or by casting:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:306
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:306
msgid "**Do** write constants and variables with dynamic typing:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:316
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:316
msgid "**Don't** write functions with inferred arguments or return types:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:327
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:327
msgid "**Do** write functions using dynamic typing:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:339
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:339
msgid "Use real-world code examples where appropriate"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:341
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:341
msgid "Real-world examples are more accessible to beginners than abstract ``foos`` and ``bars``. You can also copy them directly from your game projects, ensuring that any code snippet compiles without errors."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:345
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:345
msgid "Writing ``var speed = 10`` rather than ``var my_var = 10`` allows beginners to understand code better. It gives them a frame of reference as to where they could use the code snippets in a live project."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:349
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:349
msgid "**Don't** write made-up examples:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:360
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:360
msgid "**Do** write concrete examples:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:372
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:372
msgid "Of course, there are times when using real-world examples is impractical. In those situations, you should still avoid using names such as ``my_var``, ``foo()`` or ``my_func()`` and consider more meaningful names for your examples."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:379
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:379
msgid "The brief description is the reference's most important sentence. It's the user's first contact with a node:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:382
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:382
msgid "It's the only description in the \"Create New Node\" dialog."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:383
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:383
msgid "It's at the top of every page in the reference"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:385
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:385
msgid "The brief description should explain the node's role and its functionality, in up to 200 characters."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:388
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:388
msgid "**Don't** write tiny and vague summaries:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:395
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:395
msgid "**Do** give an overview of the node's functionality:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:402
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:402
msgid "Use the node's full description to provide more information, and a code example, if possible."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:408
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:408
msgid "Some methods return important values. Describe them at the end of the description, ideally on a new line. No need to mention the return values for any method whose name starts with ``set`` or ``get``."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:419
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:419
msgid "**Do** always use \"Returns\"."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:426
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:426
msgid "Notice the exception to the \"direct voice\" rule: with the move method, an external collider can influence the method and the body that calls ``move``. In this case, you can use the passive voice."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:433
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:433
msgid "For boolean member variables, always use ``if true`` and/or ``if false``, to stay explicit. ``Controls whether or not`` may be ambiguous and won't work for every member variable."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:437
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:437
msgid "Also, surround boolean values, variable names and methods with ``[code][/code]``."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:439
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:439
msgid "**Do** start with \"if true\":"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:448
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:448
msgid "Use ``[code]`` around arguments"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:450
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:450
msgid "In the class reference, always surround arguments with ``[code][/code]``. In the documentation and in Godot, it will display like ``this``. When you edit XML files in the Godot repository, replace existing arguments written like 'this' or \\`this\\` with ``[code]this[/code]``."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:457
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:457
msgid "Common vocabulary to use in Godot's documentation"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:459
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:459
msgid "The developers chose some specific words to refer to areas of the interface. They're used in the sources, in the documentation, and you should always use them instead of synonyms, so the users know what you're talking about."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:467
#: ../../docs/community/contributing/docs_writing_guidelines.rst:467
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:467
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:467
msgid "Overview of the interface and common vocabulary"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:469
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:469
msgid "In the top left corner of the editor lie the ``main menus``. In the center, the buttons change the ``workspace``. And together the buttons in the top right are the ``playtest buttons``. The area in the center, that displays the 2D or the 3D space, is the ``viewport``. At its top, you find a list of ``tools`` inside the ``toolbar``."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:475
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:475
msgid "The tabs or dockable panels on either side of the viewport are ``docks``. You have the ``FileSystem dock``, the ``Scene dock`` that contains your scene tree, the ``Import dock``, the ``Node dock``, and the ``Inspector`` or ``Inspector dock``. With the default layout you may call the tabbed docks ``tabs``: the ``Scene tab``, the ``Node tab``..."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:481
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:481
msgid "The Animation, Debugger, etc. at the bottom of the viewport are ``panels``. Together they make up the ``bottom panels``."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:484
msgid "Foldable areas of the Inspector are ``sections``. The node's parent class names, which you can't fold, are ``Classes`` e.g. the ``KinematicBody2D class``. And individual lines with key-value pairs are ``properties``. E.g. ``position`` or ``modulate color`` are both ``properties``."
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:484
msgid "Foldable areas of the Inspector are ``sections``. The node's parent class names, which you can't fold, are ``Classes`` e.g. the ``CharacterBody2D class``. And individual lines with key-value pairs are ``properties``. E.g. ``position`` or ``modulate color`` are both ``properties``."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:491
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:491
msgid "Keyboard shortcut guidelines"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:493
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:493
msgid "Keyboard and mouse shortcuts should make use of the ``:kbd:`` tag, which allows shortcuts to stand out from the rest of the text and inline code. Use the compact form for modifier keys (:kbd:`Ctrl`/:kbd:`Cmd`) instead of their spelled out form (:kbd:`Control`/:kbd:`Command`). For combinations, use the ``+`` symbol with a space on either side of the symbol."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:499
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:499
msgid "Make sure to mention shortcuts that differ on macOS compared to other platforms. On macOS, ``Cmd`` often replaces ``Ctrl`` in keyboard shortcuts."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:502
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:502
msgid "Try to integrate the shortcut into sentences the best you can. Here are some examples with the ``:kbd:`` tag left as-is for better visibility:"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:505
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:505
msgid "Press ``:kbd:`Ctrl + Alt + T``` to toggle the panel (``:kbd:`Cmd + Alt + T``` on macOS)."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:506
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:506
msgid "Press ``:kbd:`Space``` and hold the left mouse button to pan in the 2D editor."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:507
#: ../../docs/contributing/documentation/docs_writing_guidelines.rst:507
msgid "Press ``:kbd:`Shift + Up Arrow``` to move the node upwards by 8 pixels."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:510
msgid "Image contribution guidelines"
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:512
msgid "A significant part of the documentation is images, and there are several important guidelines to follow."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:515
msgid "First, you should always be using the default editor theme and text when taking screenshots."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:518
msgid "To improve the appearance of 3D screenshots, use 4× MSAA, enable anisotropic filtering on the project's textures, and set the anisotropic filter quality to 16× in Project Settings."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:522
msgid "Screenshot sizes should not exceed 1920×1080 to ensure fast loading on slower connections."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:525
msgid "When you need to highlight an area of the editor to show something, like a button or option, use a 2 pixel-thick yellow outline without a bevel. If the outline is on a dark background, the outline should be yellow so it can be easily seen by colorblind people. Please do not use red as it won't be visible for some users."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:531
msgid "Before you add or replace any images in the documentation, they should be run through a PNG compressor to save size. You can use the lossless OxiPNG compressor included in `Squoosh <https://squoosh.app/>`__ for this purpose. For heavier images, consider using a lossy compressor like `pngquant <https://pngquant.org/>`_. With it, almost no image quality is lost during compression."
msgstr ""
#: ../../docs/community/contributing/docs_writing_guidelines.rst:540
msgid "The program pngquant must be installed locally as it's not available in Squoosh."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,287 +16,287 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/editor_and_docs_localization.rst:4
msgid "Editor and docs localization"
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:4
msgid "Editor and documentation localization"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:8
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:8
msgid "Godot aims to make game development available to everyone, including people who may not know or be comfortable with English. Therefore, we do our best to make the most important resources available in many languages, thanks to the translation effort of the community."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:13
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:13
msgid "These resources include:"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:15
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:15
msgid "The `Godot editor's interface <https://hosted.weblate.org/projects/godot-engine/godot/>`__ (ca. 15,000 words)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:17
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:17
msgid "The `online documentation <https://hosted.weblate.org/projects/godot-engine/godot-docs/>`__ (editor manual and tutorials, ca. 300,000 words)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:19
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:19
msgid "The `class reference <https://hosted.weblate.org/projects/godot-engine/godot-class-reference/>`__, available both online and in the editor (ca. 200,000 words)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:22
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:22
msgid "To manage translations, we use the GNU gettext file format (``PO`` files), and the open source `Weblate <https://weblate.org>`__ web-based localization platform, which allows easy collaboration of many contributors to complete the translation for the various components, and keep them up to date. Click the bold links above to access each resource on Weblate."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:28
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:28
msgid "This page gives an overview of the general translation workflow on Weblate, and some resource-specific instructions on e.g. how to handle some keywords or the localization of images."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:34
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:34
msgid "Translating all the official Godot content is a massive undertaking, so we advise prioritizing the resources as they are listed above: first the editor interface, then the online documentation, and eventually the class reference if there are enough translators to keep up with updates."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:40
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:40
msgid "Using Weblate for translations"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:42
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:42
msgid "While our translations eventually reside in the Git repositories of the Godot engine and its documentation, all translation updates are handled through Weblate, and thus direct pull requests to the Git repositories are not accepted. Translations are synced manually between Weblate and the Godot repositories by maintainers."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:48
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:48
msgid "You should therefore `register on Weblate <https://hosted.weblate.org/accounts/register/>`__ to contribute to Godot's translations."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:51
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:51
msgid "Once signed in, browse to the Godot resource which you want to contribute to (in this page we will use the `editor translation <https://hosted.weblate.org/projects/godot-engine/godot/>`__ as an example) to find the list of all languages:"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:59
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:59
msgid "Feel free to consult Weblate's own documentation on the `translation workflow <https://docs.weblate.org/en/latest/user/translating.html>`__ for more details."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:64
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:64
msgid "Adding a new language"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:66
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:66
msgid "If your language is already listed, click on its name to access the overview, and skip the rest of this section."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:69
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:69
msgid "If your language is not listed, scroll to the bottom of the list of languages and click the \"Start new translation\" button, and select the language you want to translate to:"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:77
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:77
msgid "If your language is spoken in several countries with only limited regional variations, please consider adding it with its generic variant (e.g. ``fr`` for French) instead of a regional variant (e.g. ``fr_FR`` for French (France), ``fr_CA`` for French (Canada), or ``fr_DZ`` for French (Algeria))."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:82
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:82
msgid "Godot has a huge amount of content to translate, so duplicating the work for regional variants should only be done if the language variations are significant enough. Additionally, if a translation is done with for a regional variant, it will only be available automatically for users located in this region (or having their system language configured for this region)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:88
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:88
msgid "When regional variations are significant enough to warrant separate translations, we advise to focus on completing a generic variant first if possible, then duplicate the fully completed translation for regional variants and do the relevant edits. This is typically a good strategy for e.g. Spanish (work on ``es`` first, then duplicate it to ``es_AR``, ``es_ES``, ``es_MX``, etc. if necessary) or Portuguese (``pt_BR`` vs ``pt_PT``)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:97
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:97
msgid "Translation interface"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:99
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:99
msgid "Once a language has been selected, you will see an overview of the translation status, including how many strings are left to translate or review. Each item can be clicked and used to browse through the corresponding list. You can also click the \"Translate\" button to get started on the list of strings needing action."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:107
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:107
msgid "After selecting a list of clicking \"Translate\", you will see the main translation interface where all the work happens:"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:112
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:112
msgid "On that page, you have:"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:114
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:114
msgid "A toolbar which lets you cycle through strings of the current list, change to another predefined list or do a custom search, etc. There is also a \"Zen\" editing mode with a simplified interface."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:117
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:117
msgid "The actual string you are working on in the \"Translation\" panel. By default, there should be the English source string and an edit box for your language. If you are familiar with other languages, you can add them in your user settings to give you more context for translation. Once you are done editing the current string, press \"Save\" to confirm changes and move to the next entry. Alternatively, use the \"Skip\" button to skip it. The \"Needs editing\" checkbox means that the original string was updated, and the translation therefore needs review to take those changes into account (in PO jargon, these are so-called \"fuzzy\" strings). Such strings won't be used in the translation until fixed."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:127
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:127
msgid "The bottom panel has various tools which can help with the translation effort, such as context from nearby strings (usually from the same editor tool or documentation page, so they might use similar terms), comments from other translators, machine translations, and a list of all other existing translations for that string."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:132
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:132
msgid "On the top right, the glossary shows terms for which an entry has been added previously, and which are included in the current string. For example, if you decided with fellow translators to use a specific translation for the \"node\" term in Godot, you can add it to the glossary to ensure that other translators use the same convention."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:137
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:137
msgid "The bottom right panel includes information on the source string. The most relevant item is the \"source string location\", which links you to the original string on GitHub. You may need to search for the string in the page to locate it and its surrounding context."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:143
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:143
msgid "Locating original content"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:145
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:145
msgid "PO files are an ordered list of source strings (``msgid``) and their translation (``msgstr``), and by default, Weblate will present the strings in that order. It can therefore be useful to understand how the content is organized in the PO files to help you locate the original content and use it as a reference when translating."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:153
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:153
msgid "It is primordial to use the original context as reference when translating, as many words have several possible translations depending on the context. Using the wrong translation can actually be detrimental to the user and make things harder to understand than if they stayed in English. Using the context also makes the translation effort much easier and more enjoyable, as you can see directly if the translation you wrote will make sense in context."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:161
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:161
msgid "The editor interface's translation template is generated by parsing all the C++ source code in **alphabetical order**, so all the strings defined in a given file will be grouped together. For example, if the \"source string location\" indicates ``editor/code_editor.cpp``, the current string (and the nearby ones) is defined in the ``editor/code_editor.cpp`` code file, and is thereby related to the code editors in Godot (GDScript, shaders)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:167
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:167
msgid "The online documentation's translation template is generated from the source RST files in the same order as seen in the **table of contents**, so for example the first strings are from the front page of the documentation. The recommended workflow is therefore to find a unique string corresponding to a page that you want to translate, and then translate all the strings with the same source string location while comparing with the online version of that page in English. An example of source string location could be ``getting_started/step_by_step/nodes_and_scenes.rst`` for the page :ref:`doc_nodes_and_scenes`."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:176
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:176
msgid "The class reference's translation template is generated from the source XML files in **alphabetical order**, which is also the same as the order of the table of contents for the online version. You can therefore locate the source string corresponding to the brief description of a given class to find the first string to translate and all other descriptions from that class should be in the subsequent strings on Weblate. For example, the descriptions for the :ref:`class_Node2D` class would have the source string location ``doc/classes/Node2D.xml``."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:185
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:185
msgid "A handy tool to locate specific pages/classes is to use Weblate's advanced search feature, and especially the \"Location strings\" query (which can also be used with the ``location:`` token, e.g. ``location:nodes_and_scenes.rst``):"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:195
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:195
msgid "When a given source string is used in multiple source locations, they will all be concatenated into one. For example, the above ``location:nodes_and_scenes.rst`` query would land first on the \"Introduction\" source string which is used in dozens of pages, including some that come before ``nodes_and_scenes.rst`` in the template. Clicking the \"Next\" button then brings us to the \"Scene and nodes\" title string displayed above. So it may happen that a given paragraph or section title is not at the location you'd expect it when reading the online version of a page."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:206
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:206
msgid "Respecting the markup syntax"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:208
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:208
msgid "Each translation resource originates from a different source code format, and having some notions on the markup language used for each resource is important to avoid creating syntax errors in your translations."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:213
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:213
msgid "Editor interface (C++)"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:215
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:215
msgid "The editor translations originate from C++ strings, and may use:"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:217
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:217
msgid "**C format specifiers** such as ``%s`` (a string) or ``%d`` (a number). These specifiers are replaced by content at runtime, and should be preserved and placed in your translation where necessary for it to be meaningful after substitution. You may need to refer to the source string location to understand what kind of content will be substituted if it's not clear from the sentence. Example (``%s`` will be substituted with a file name or path)::"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:230
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:230
msgid "**C escape characters** such as ``\\n`` (line break) or ``\\t`` (tabulation). In the Weblate editor, the ``\\n`` characters are replaced by ``↵`` (return) and ``\\t`` by ``↹``. Tabs are not used much, but you should make sure to use line breaks in the same way as the original English string (Weblate will issue a warning if you don't). Line breaks might sometimes be used for vertical spacing, or manual wrapping of long lines which would otherwise be too long especially in the editor translation). Example::"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:247
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:247
msgid "Only logical order of the characters matters, in the right-to-left text, format specifiers may be displayed as ``s%``."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:251
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:251
msgid "Online documentation (RST)"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:253
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:253
msgid "The documentation translations originate from reStructuredText (RST) files, which also use their own markup syntax to style text, create internal and external links, etc. Here are some examples::"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:295
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:295
msgid "See Sphinx's `reStructured Text primer <https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html>`__ for a quick overview of the markup language you may find in source strings. You may encounter especially the inline markup (bold, italics, inline code) and the internal and external hyperlink markup."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:301
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:301
msgid "Class reference (BBCode)"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:303
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:303
msgid "The class reference is documented in the main Godot repository using XML files, and with BBCode-like markup for styling and internal references."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:306
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:306
msgid "Some of the tags used are from the original BBCode (e.g. ``[b]Bold[/b]`` and ``[i]Italics[/i]``), while others are Godot-specific and used for advanced features such as inline code (e.g. ``[code]true[/code]``), linking to another class (e.g. ``[Node2D]``) or to a property in a given class (e.g. ``[member Node2D.position]``), or for multiline code blocks. Example::"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:318
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:318
msgid "In the above example, ``[code]name[/code]``, ``[code]alpha[/code]``, and ``[Color]`` should *not* be translated, as they refer respectively to argument names and a class of the Godot API. Similarly, the contents of the ``[codeblock]`` should not be translated, as ``ColorN`` is a function of the Godot API and ``\"red\"`` is one of the named colors it supports. At most, you can translate the name of the variable which holds the result (``red = ...``)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:325
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:325
msgid "Note also that in the XML, each line is a paragraph, so you should not add line breaks if they are not part of the original translation."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:330
msgid "See our documentation for class reference writers for the :ref:`list of BBCode-like tags <doc_class_reference_writing_guidelines_bbcode>` which are used throughout the class reference."
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:330
msgid "See our documentation for class reference writers for the :ref:`list of BBCode-like tags <doc_class_reference_bbcode>` which are used throughout the class reference."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:335
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:335
msgid "Offline translation and testing"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:337
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:337
msgid "While we advise using the Weblate interface to write translations, you also have the possibility to download the PO file locally to translate it with your preferred PO editing application, such as `Poedit <https://poedit.net/>`__ or `Lokalize <https://userbase.kde.org/Lokalize>`__."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:342
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:342
msgid "To download the PO file locally, browse to the translation overview for your language, and select the first item in the \"Files\" menu:"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:347
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:347
msgid "Once you are done with a series of edits, use the \"Upload translation\" item in that same menu and select your file. Choose \"Add as translation\" for the file upload mode."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:353
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:353
msgid "If a significant amount of time has passed between your download of the PO file and the upload of the edited version, there is a risk to overwrite the translations authored by other contributors in the meantime. This is why we advise to use the online interface so that you always work on the latest version."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:359
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:359
msgid "If you want to test changes locally (especially for the editor translation), you can use the downloaded PO file and :ref:`compile Godot from source <toc-devel-compiling>`."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:362
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:362
msgid "Rename the editor translation PO file to ``<lang>.po`` (e.g. ``eo.po`` for Esperanto) and place it in the ``editor/translations/`` folder (`GitHub <https://github.com/godotengine/godot/tree/master/editor/translations>`__)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:366
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:366
msgid "You can also test class reference changes the same way by renaming the PO file similarly and placing it in the ``doc/translations/`` folder (`GitHub <https://github.com/godotengine/godot/tree/master/doc/translations>`__)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:371
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:371
msgid "Localizing documentation images"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:373
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:373
msgid "The online documentation includes many images, which can be screenshots of the Godot editor, custom-made graphs, of any other kind of visual content. Some of it includes text and might thus be relevant to localize in your language."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:377
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:377
msgid "This part is not handled via Weblate, but directly on the `godot-docs-l10n <https://github.com/godotengine/godot-docs-l10n>`_ Git repository where the documentation translations are synced from Weblate."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:383
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:383
msgid "The workflow is not the most straightforward and requires some knowledge of Git. We plan to work on a simplified Web tool which could be used to manage image localization in a convenient way, abstracting away these steps."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:387
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:387
msgid "To translate an image, you should first locate it in the original English documentation. To do so, browse the relevant page in the docs, e.g. :ref:`doc_intro_to_the_editor_interface`. Click the \"Edit on GitHub\" link in the top right corner:"
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:394
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:394
msgid "On GitHub, click on the image you want to translate. If relevant, click on \"Download\" to download it locally and edit it with an image edition tool. Note the full path to the image as it will be needed further down (here ``getting_started/step_by_step/img/project_manager_first_open.png``)."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:401
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:401
msgid "Create your localized version of the image, either by editing the English one, or by taking a screenshot of the editor with your language, if it's an editor screenshot. Some images may also have source files available in SVG format, so you can browse the ``img/`` folder which contains them to check for that."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:406
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:406
msgid "Name your localized image like the original one, but with the language code added before the extension, e.g. ``project_manager_first_open.png`` would become ``project_manager_first_open.fr.png`` for the French localization."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:410
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:410
msgid "Finally, on godot-docs-l10n_, recreate the same folder structure as for the original image in the ``images`` subfolder (`GitHub <https://github.com/godotengine/godot-docs-l10n/tree/master/images>`_), and place your translated image there. In our example, the end result should be ``images/getting_started/step_by_step/img/project_manager_first_open.fr.png``."
msgstr ""
#: ../../docs/community/contributing/editor_and_docs_localization.rst:416
#: ../../docs/contributing/documentation/editor_and_docs_localization.rst:416
msgid "Repeat this for other images and :ref:`make a Pull Request <doc_pr_workflow>`."
msgstr ""

View File

@@ -0,0 +1,69 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/documentation/index.rst:4
msgid "Writing documentation"
msgstr ""
#: ../../docs/contributing/documentation/index.rst:6
msgid "We always need help to improve the documentation, be it the class reference or the manual. Below, you can find our content and writing guidelines and concrete guides to make changes to the documentation."
msgstr ""
#: ../../docs/contributing/documentation/index.rst:10
msgid "Be sure to also check the :ref:`workflow guidelines <doc_contributing_workflow>`, especially if you're new to using Git or GitHub."
msgstr ""
#: ../../docs/contributing/documentation/index.rst:14
msgid "Guidelines"
msgstr ""
#: ../../docs/contributing/documentation/index.rst:16
msgid "Here are the principles and guidelines we strive to follow to write accessible documentation."
msgstr ""
#: ../../docs/contributing/documentation/index.rst:28
msgid "Writing the manual"
msgstr ""
#: ../../docs/contributing/documentation/index.rst:30
msgid "These articles explain how to contribute to this very documentation, and how to build the online version locally for testing."
msgstr ""
#: ../../docs/contributing/documentation/index.rst:41
msgid "Class reference guides"
msgstr ""
#: ../../docs/contributing/documentation/index.rst:43
msgid "The pages below focus on the class reference."
msgstr ""
#: ../../docs/contributing/documentation/index.rst:45
msgid "As the reference is included in the Godot editor, its source files are part of the `godot repository <https://github.com/godotengine/godot>`_. We use XML files to write it, so the process to contribute to the class reference differs from writing the online manual."
msgstr ""
#: ../../docs/contributing/documentation/index.rst:58
msgid "Translating the documentation"
msgstr ""
#: ../../docs/contributing/documentation/index.rst:60
msgid "The community is always working hard on making Godot and its documentation available to more people. Localizing the documentation is a colossal and ongoing effort you can be part of."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,113 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:4
msgid "Contributing to the class reference"
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:8
msgid "The :ref:`Class reference <doc_class_reference>` is a set of articles describing the public API of the engine. This includes descriptions for various classes, methods, properties, and global objects, available for scripting. The class reference is available online, from the documentation sidebar, and in the Godot editor, from the help menu."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:14
msgid "As the engine grows and features are added or modified, some parts of the class reference become obsolete and new descriptions and examples need to be added. While developers are encouraged to document all of their work in the class reference when submitting a pull request, we can't expect everyone to be able to write high quality documentation, so there is always work for contributors like you to polish existing and create missing reference material."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:21
msgid "The source of the class reference"
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:23
msgid "As the class reference is available in two places, online and in the editor, we need to take care to keep things in sync. To achieve this the `main Godot repository <https://github.com/godotengine/godot/>`_ is picked as the source of truth, and the documentation for the class reference is tracked there."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:29
msgid "You should **not** edit ``.rst`` files in the ``classes/`` folder of the `documentation repository <https://github.com/godotengine/godot-docs/>`_. These files are generated automatically and are synced manually by project maintainers. Read further to learn how to correctly edit the class reference."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:34
msgid "In the main repository the class reference is stored in XML files, one for each exposed class or global object. The majority of these files is located in `doc/classes/ <https://github.com/godotengine/godot/tree/master/doc/classes>`_, but some modules contain their own documentation as well. You will find it in the ``modules/<module_name>/doc_classes/`` directory. To learn more about editing XML files refer to :ref:`doc_class_reference_primer`."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:42
msgid "For details on Git usage and the pull request workflow, please refer to the :ref:`doc_pr_workflow` page."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:45
msgid "If you want to translate the class reference from English to another language, see :ref:`doc_editor_and_docs_localization`. This guide is also available as a `video tutorial on YouTube <https://www.youtube.com/watch?v=5jeHXxeX-JY>`_."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:50
msgid "**Important:** If you plan to make large changes, you should create an issue on the `godot-docs repository <https://github.com/godotengine/godot-docs/>`_ or comment on an existing issue. Doing so lets others know you're already taking care of a given class."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:56
msgid "What to contribute"
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:58
msgid "The natural place to start contributing is the classes that you are most familiar with. This ensures that the added description will be based on experience and the necessary know-how, not just the name of a method or a property. We advise not to add low effort descriptions, no matter how appealing it may look. Such descriptions obscure the need for documentation and are hard to identify automatically."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:66
msgid "Following this principle is important and allows us to create tools for contributors. Such as the class reference's `completion status tracker <https://godotengine.github.io/doc-status/>`_. You can use it to quickly find documentation pages missing descriptions."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:70
msgid "If you decide to document a class, but don't know what a particular method does, don't worry. Leave it for now, and list the methods you skipped when you open a pull request with your changes. Another writer will take care of it."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:74
msgid "You can still look at the methods' implementation in Godot's source code on GitHub. If you have doubts, feel free to ask on the `Q&A website <https://godotengine.org/qa/>`_ and `Godot Contributors Chat <https://chat.godotengine.org/>`_."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:80
msgid "Unless you make minor changes, like fixing a typo, we do not recommend using the GitHub web editor to edit the class reference's XML files. It lacks features to edit XML well, like keeping indentations consistent, and it does not allow amending commits based on reviews."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:85
msgid "It also doesn't allow you to test your changes in the engine or with validation scripts as described in :ref:`doc_class_reference_editing_xml`."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:90
msgid "Updating class reference when working on the engine"
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:92
msgid "When you create a new class or modify an existing engine's API, you need to re-generate the XML files in ``doc/classes/``."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:95
msgid "To do so, you first need to compile Godot. See the :ref:`doc_introduction_to_the_buildsystem` page to learn how. Then, execute the compiled Godot binary from the Godot root directory with the ``--doctool`` option. For example, if you're on 64-bit Linux, the command might be:"
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:103
msgid "The exact set of suffixes may be different. Carefully read through the linked article to learn more about that."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:106
msgid "The XML files in ``doc/classes/`` should then be up-to-date with current Godot Engine features. You can then check what changed using the ``git diff`` command."
msgstr ""
#: ../../docs/contributing/documentation/updating_the_class_reference.rst:109
msgid "Please only include changes that are relevant to your work on the API in your commits. You can discard changes in other XML files using ``git checkout``, but consider reporting if you notice unrelated files being updated. Ideally, running this command should only bring up the changes that you yourself have made."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,179 +16,151 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/ways_to_contribute.rst:4
#: ../../docs/contributing/ways_to_contribute.rst:4
msgid "Ways to contribute"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:6
#: ../../docs/contributing/ways_to_contribute.rst:6
msgid "Godot Engine is a non-profit, community-driven free and open source project. Almost all (but our lead dev Juan, more on that below) developers are working *pro bono* on their free time, out of personal interest and for the love of creating a libre engine of exceptional quality."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:11
#: ../../docs/contributing/ways_to_contribute.rst:11
msgid "This means that to thrive, Godot needs as many users as possible to get involved by contributing to the engine. There are many ways to contribute to such a big project, making it possible for everybody to bring something positive to the engine, regardless of their skill set:"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:16
#: ../../docs/contributing/ways_to_contribute.rst:16
msgid "**Be part of the community.** The best way to contribute to Godot and help it become ever better is simply to use the engine and promote it by word-of-mouth, in the credits or splash screen of your games, blog posts, tutorials, videos, demos, gamedev or free software events, support on the Q&A, forums, Contributors Chat, Discord, etc. Participate! Being a user and advocate helps spread the word about our great engine, which has no marketing budget and can therefore only rely on its community to become more mainstream."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:25
#: ../../docs/contributing/ways_to_contribute.rst:25
msgid "**Make games.** It's no secret that, to convince new users and especially the industry at large that Godot is a relevant market player, we need great games made with Godot. We know that the engine has a lot of potential, both for 2D and 3D games, but given its young age we still lack big releases that will draw attention to Godot. So keep working on your awesome projects, each new game increases our credibility on the gamedev market!"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:32
#: ../../docs/contributing/ways_to_contribute.rst:32
msgid "**Get involved in the engine's development.** This can be by contributing code via pull requests, testing the development snapshots or directly the git *master* branch, report bugs or suggest enhancements on the issue tracker, improve the official documentation (both the class reference and tutorials) and its translations. The following sections will cover each of those \"direct\" ways of contributing to the engine."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:40
#: ../../docs/contributing/ways_to_contribute.rst:40
msgid "**Donate.** Godot is a non-profit project, but it can still benefit from user donations for many things. Apart from usual expenses such as hosting costs or promotional material on events, we also use donation money to acquire hardware when necessary (e.g. we used donation money to buy a MacBook Pro to implement Retina/HiDPI support and various other macOS-related features). Most importantly, we also used donation money to hire core developers so they can work full-time on the engine. Even with a low monthly wage, we need a steady donation income to continue doing this, which has been very beneficial to the project so far. So if you want to donate some money to the project, check `our website <https://godotengine.org/donate>`_ for details."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:54
#: ../../docs/contributing/ways_to_contribute.rst:54
msgid "Contributing code"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:56
#: ../../docs/contributing/ways_to_contribute.rst:56
msgid "The possibility to study, use, modify and redistribute modifications of the engine's source code are the fundamental rights that Godot's `MIT <https://tldrlegal.com/license/mit-license>`_ license grants you, making it `free and open source software <https://en.wikipedia.org/wiki/Free_and_open-source_software>`_."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:61
#: ../../docs/contributing/ways_to_contribute.rst:61
msgid "As such, everyone is entitled to modify `Godot's source code <https://github.com/godotengine/godot>`_, and send those modifications back to the upstream project in the form of a patch (a text file describing the changes in a ready-to-apply manner) or - in the modern workflow that we use - via a so-called \"pull request\" (PR), i.e. a proposal to directly merge one or more Git commits (patches) into the main development branch."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:68
#: ../../docs/contributing/ways_to_contribute.rst:68
msgid "Contributing code changes upstream has two big advantages:"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:70
#: ../../docs/contributing/ways_to_contribute.rst:70
msgid "Your own code will be reviewed and improved by other developers, and will be further maintained directly in the upstream project, so you won't have to reapply your own changes every time you move to a newer version. On the other hand it comes with a responsibility, as your changes have to be generic enough to be beneficial to all users, and not just your project; so in some cases it might still be relevant to keep your changes only for your own project, if they are too specific."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:78
#: ../../docs/contributing/ways_to_contribute.rst:78
msgid "The whole community will benefit from your work, and other contributors will behave the same way, contributing code that will be beneficial to you. At the time of this writing, more than 1000 developers have contributed code changes to the engine!"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:83
#: ../../docs/contributing/ways_to_contribute.rst:83
msgid "To ensure good collaboration and overall quality, the Godot developers enforce some rules for code contributions, for example regarding the style to use in the C++ code (indentation, brackets, etc.) or the Git and PR workflow."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:87
#: ../../docs/contributing/ways_to_contribute.rst:87
msgid "A good place to start is by searching for issues tagged as `good first issue <https://github.com/godotengine/godot/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22>`_ on GitHub."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:91
#: ../../docs/contributing/ways_to_contribute.rst:91
msgid "Technical details about the PR workflow are outlined in a specific section, :ref:`doc_pr_workflow`."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:94
#: ../../docs/contributing/ways_to_contribute.rst:94
msgid "Details about the code style guidelines and the ``clang-format`` tool used to enforce them are outlined in :ref:`doc_code_style_guidelines`."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:98
#: ../../docs/contributing/ways_to_contribute.rst:98
msgid "All pull requests must go through a review process before being accepted. Depending on the scope of the changes, it may take some time for a maintainer responsible for the modified part of the engine to provide their review. We value all of our contributors and ask them to be patient in the meantime, as it is expected that in an open source project like Godot, there is going to be way more contributions than people validating them."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:105
#: ../../docs/contributing/ways_to_contribute.rst:105
msgid "To make sure that your time and efforts aren't wasted, it is recommended to vet the idea first before implementing it and putting it for a review as a PR. To that end, Godot has a `proposal system <https://github.com/godotengine/godot-proposals>`_. Its usage is encouraged to plan changes and discuss them with the community. Implementation details can also be discussed with other contributors on the `Godot Contributors Chat <https://chat.godotengine.org/>`_."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:111
#: ../../docs/contributing/ways_to_contribute.rst:111
msgid "Proposals are only required when working on an enhancement or a new feature. Bug reports are sufficient for fixing issues."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:115
#: ../../docs/contributing/ways_to_contribute.rst:115
msgid "Testing and reporting issues"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:117
#: ../../docs/contributing/ways_to_contribute.rst:117
msgid "Another great way of contributing to the engine is to test development releases or the development branch and to report issues. It is also helpful to report issues discovered in stable releases, so that they can be fixed in the development branch and in future maintenance releases."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:123
#: ../../docs/contributing/ways_to_contribute.rst:123
msgid "Testing development versions"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:125
#: ../../docs/contributing/ways_to_contribute.rst:125
msgid "To help with the testing, you have several possibilities:"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:127
#: ../../docs/contributing/ways_to_contribute.rst:127
msgid "Compile the engine from source yourself, following the instructions of the :ref:`Compiling <toc-devel-compiling>` page for your platform."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:130
#: ../../docs/contributing/ways_to_contribute.rst:130
msgid "Test official pre-release binaries when they are announced (usually on the blog and other community platforms), such as alpha, beta and release candidate (RC) builds."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:133
#: ../../docs/contributing/ways_to_contribute.rst:133
msgid "Test \"trusted\" unofficial builds of the development branch; just ask community members for reliable providers. Whenever possible, it's best to use official binaries or to compile yourself though, to be sure about the provenance of your binaries."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:138
#: ../../docs/contributing/ways_to_contribute.rst:138
msgid "As mentioned previously, it is also helpful to keep your eyes peeled for potential bugs that might still be present in the stable releases, especially when using some niche features of the engine which might get less testing by the developers."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:144
#: ../../docs/contributing/ways_to_contribute.rst:144
msgid "Filing an issue on GitHub"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:146
msgid "Godot uses `GitHub's issue tracker <https://github.com/godotengine/godot/issues>`_ for bug reports and enhancement suggestions. You will need a GitHub account to be able to open a new issue there, and click on the **New issue** button."
#: ../../docs/contributing/ways_to_contribute.rst:146
msgid "Godot uses `GitHub's issue tracker <https://github.com/godotengine/godot/issues>`_ for bug reports. When you start filing a bug report, youll be given a form to fill out. Please try to follow it so that all issues are consistent and provide the required information."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:150
msgid "When you report a bug, you should keep in mind that the process is similar to an appointment with your doctor. You noticed *symptoms* that make you think that something might be wrong (the engine crashes, some features don't work as expected, etc.). It's the role of the bug triaging team and the developers to then help make the diagnosis of the issue you met, so that the actual cause of the bug can be identified and addressed."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:157
msgid "You should therefore always ask yourself: what is relevant information to give so that other Godot contributors can understand the bug, identify it and hopefully fix it. Here are some of the most important infos that you should always provide:"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:162
msgid "**Operating system.** Sometimes bugs are system-specific, i.e. they happen only on Windows, or only on Linux, etc. That's particularly relevant for all bugs related to OS interfaces, such as file management, input, window management, audio, etc."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:167
msgid "**Hardware.** Sometimes bugs are hardware-specific, i.e. they happen only on certain processors, graphic cards, etc. If you are able to, it can be helpful to include information on your hardware."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:171
msgid "**Godot version.** This is a must-have. Some issues might be relevant in the current stable release, but fixed in the development branch, or the other way around. You might also be using an obsolete version of Godot and experiencing a known issue fixed in a later version, so knowing this from the start helps to speed up the diagnosis."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:177
msgid "**How to reproduce the bug.** In the majority of cases, bugs are reproducible, i.e. it is possible to trigger them reliably by following some steps. Please always describe those steps as clearly as possible, so that everyone can try to reproduce the issue and confirm it. Ideally, make a demo project that reproduces this issue out of the box, zip it and attach it to the issue (you can do this by drag and drop). Even if you think that the issue is trivial to reproduce, adding a minimal project that lets everyone reproduce it is a big added value. You have to keep in mind that there are thousands of issues in the tracker, and developers can only dedicate little time to each issue."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:188
msgid "When you click the **New issue** button, you should be presented with a text area prefilled with our issue template. Please try to follow it so that all issues are consistent and provide the required information."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:193
#: ../../docs/contributing/ways_to_contribute.rst:152
msgid "Contributing to the documentation"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:195
#: ../../docs/contributing/ways_to_contribute.rst:154
msgid "There are two separate resources referred to as \"documentation\" in Godot:"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:197
msgid "**The class reference.** This is the documentation for the complete Godot API as exposed to GDScript and the other scripting languages. It can be consulted offline, directly in Godot's code editor, or online at :ref:`Godot API <doc_class_reference>`. To contribute to the class reference, you have to edit the XML file corresponding to the class and make a pull request. See :ref:`doc_updating_the_class_reference` and :ref:`doc_class_reference_writing_guidelines` for more details."
#: ../../docs/contributing/ways_to_contribute.rst:156
msgid "**The class reference.** This is the documentation for the complete Godot API as exposed to GDScript and the other scripting languages. It can be consulted offline, directly in Godot's code editor, or online at Godot :ref:`Class Reference <doc_class_reference>`. To contribute to the class reference, you have to edit the XML file corresponding to the class and make a pull request. See :ref:`doc_updating_the_class_reference` and :ref:`doc_class_reference_primer` for more details."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:205
#: ../../docs/contributing/ways_to_contribute.rst:164
msgid "**The tutorials and engine documentation and its translations.** This is the part you are reading now, which is distributed in the HTML format. Its contents are generated from plain text files in the reStructured Text (rst) format, to which you can contribute via pull requests on the `godot-docs <https://github.com/godotengine/godot-docs>`_ GitHub repository. See :ref:`doc_contributing_to_the_documentation` for more details."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:213
#: ../../docs/contributing/ways_to_contribute.rst:172
msgid "Contributing translations"
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:215
#: ../../docs/contributing/ways_to_contribute.rst:174
msgid "To make Godot accessible to everyone, including users who may prefer resources in their native language instead of English, our community helps translate both the Godot editor and its documentation in many languages."
msgstr ""
#: ../../docs/community/contributing/ways_to_contribute.rst:219
#: ../../docs/contributing/ways_to_contribute.rst:178
msgid "See :ref:`doc_editor_and_docs_localization` for more details."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,103 +16,135 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/bisecting_regressions.rst:4
#: ../../docs/contributing/workflow/bisecting_regressions.rst:4
msgid "Bisecting regressions"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:8
#: ../../docs/contributing/workflow/bisecting_regressions.rst:8
msgid "Bisecting is a way to find regressions in software. After reporting a bug on the `Godot repository on GitHub <https://github.com/godotengine/godot>`__, you may be asked by a contributor to *bisect* the issue. Bisecting makes it possible for contributors to fix bugs faster, as they can know in advance which commit caused the regression. Your effort will be widely appreciated :)"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:14
#: ../../docs/contributing/workflow/bisecting_regressions.rst:14
msgid "The guide below explains how to find a regression by bisecting."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:17
#: ../../docs/contributing/workflow/bisecting_regressions.rst:17
msgid "What is bisecting?"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:19
#: ../../docs/contributing/workflow/bisecting_regressions.rst:19
msgid "Godot developers use the `Git <https://git-scm.com/>`__ version control system. In the context of Git, bisecting is the process of performing a manual `binary search <https://en.wikipedia.org/wiki/Binary_search_algorithm>`__ to determine when a regression appeared. While it's typically used for bugs, it can also be used to find other kinds of unexpected changes such as performance regressions."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:27
#: ../../docs/contributing/workflow/bisecting_regressions.rst:27
msgid "Using official builds to speed up bisecting"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:29
#: ../../docs/contributing/workflow/bisecting_regressions.rst:29
msgid "Before using Git's ``bisect`` command, we strongly recommend trying to reproduce the bug with an older (or newer) official release. This greatly reduces the range of commits that potentially need to be built from source and tested. You can find binaries of official releases, as well as alphas, betas, and release candidates `here <https://downloads.tuxfamily.org/godotengine/>`__."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:35
msgid "For example, if you've reported a bug against Godot 3.2, you should first try to reproduce the bug in Godot 3.1 (not a patch release, see below for the reason). If the bug doesn't occur there, try to reproduce it in Godot 3.2 *beta 1* (which is roughly in the middle of all test builds available). If you can't reproduce the bug with Godot 3.2 beta 1, then try newer betas and RC builds. If you do manage to reproduce the bug with Godot 3.2 beta 1, then try older alpha builds."
#: ../../docs/contributing/workflow/bisecting_regressions.rst:35
msgid "If you have experience with Godot 3.x and can reproduce an issue with Godot 4.0, we recommend trying to reproduce the issue in the latest Godot 3.x version (if the feature exhibiting the bug is present in 3.x). This can be used to check whether the issue is a regression in 4.0 or not."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:44
msgid "For bisecting regressions, don't use patch releases such as Godot 3.1.2. Instead, use the minor version's first release like Godot 3.1. This is because patch releases are built from a separate *stable branch*. This kind of branch doesn't follow the rest of Godot's development, which is done in the ``master`` branch."
#: ../../docs/contributing/workflow/bisecting_regressions.rst:40
msgid "If the issue **is present** in 3.x, then you'll need to check whether the issue occurs in older 3.x versions as well."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:51
#: ../../docs/contributing/workflow/bisecting_regressions.rst:42
msgid "If the issue is **not present** in 3.x, then you can try older 4.0 alphas and betas to determine when the regression started."
msgstr ""
#: ../../docs/contributing/workflow/bisecting_regressions.rst:47
msgid "Project files may be incompatible between Godot versions. **Make a backup of your project** before starting the bisection process."
msgstr ""
#: ../../docs/contributing/workflow/bisecting_regressions.rst:50
msgid "Going from the oldest to the newest build generally reduces the risk of the project not being able to successfully open in the editor, thanks to backwards compatibility. Try to reduce your project to the smallest repeatable example too. The more minimal the project is, the more likely you'll be able to open it without compatibility issues in newer engine versions."
msgstr ""
#: ../../docs/contributing/workflow/bisecting_regressions.rst:58
msgid "The Git bisect command"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:53
#: ../../docs/contributing/workflow/bisecting_regressions.rst:60
msgid "If you've found a build that didn't exhibit the bug in the above testing process, you can now start bisecting the regression. The Git version control system offers a built-in command for this: ``git bisect``. This makes the process semi-automated as you only have to build the engine, run it and try to reproduce the bug."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:61
#: ../../docs/contributing/workflow/bisecting_regressions.rst:68
msgid "Before bisecting a regression, you need to set up a build environment to compile Godot from source. To do so, read the :ref:`Compiling <toc-devel-compiling>` page for your target platform. (Compiling Godot from source doesn't require C++ programming knowledge.)"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:66
#: ../../docs/contributing/workflow/bisecting_regressions.rst:73
msgid "Note that compiling Godot can take a while on slow hardware (up an hour for each full rebuild on a slow dual-core CPU). This means the full process can take up to several hours. If your hardware is too slow, you may want to stop there and report the results of your \"pre-bisecting\" on the GitHub issue so another contributor can continue bisecting from there."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:72
#: ../../docs/contributing/workflow/bisecting_regressions.rst:80
msgid "Determine the commit hashes"
msgstr ""
#: ../../docs/contributing/workflow/bisecting_regressions.rst:82
msgid "To start bisecting, you must first determine the commit hashes (identifiers) of the \"bad\" and \"good\" build. \"bad\" refers to the build that exhibits the bug, whereas \"good\" refers to the version that doesn't exhibit the bug. If you're using a pre-release build as the \"good\" or \"bad\" build, browse the `download mirror <https://downloads.tuxfamily.org/godotengine/>`__, go to the folder that contains the pre-release you downloaded and look for the ``README.txt`` file. The commit hash is written inside that file."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:80
#: ../../docs/contributing/workflow/bisecting_regressions.rst:90
msgid "If you're using a stable release as the \"good\" or \"bad\" build, use one of the following commit hashes depending on the version:"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:89
msgid "To refer to the latest state of the master branch, you can use ``master`` instead of a commit hash."
#: ../../docs/contributing/workflow/bisecting_regressions.rst:119
msgid "You can also use this Bash function to retrieve the Git commit hash of a pre-release build (add it to your ``$HOME/.bashrc`` or similar):"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:92
#: ../../docs/contributing/workflow/bisecting_regressions.rst:130
msgid "Example usage:"
msgstr ""
#: ../../docs/contributing/workflow/bisecting_regressions.rst:136
msgid "To refer to the latest state of the master branch, you can use ``master`` instead of a commit hash. Note that unlike tagged releases or snapshot commit hashes, ``master`` is a perpetually moving target."
msgstr ""
#: ../../docs/contributing/workflow/bisecting_regressions.rst:141
msgid "Build the engine"
msgstr ""
#: ../../docs/contributing/workflow/bisecting_regressions.rst:143
msgid ":ref:`Get Godot's source code using Git <doc_getting_source>`. Once this is done, in the terminal window, use ``cd`` to reach the Godot repository folder and enter the following command:"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:104
#: ../../docs/contributing/workflow/bisecting_regressions.rst:155
msgid "Compile Godot. This assumes you've set up a build environment:"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:112
msgid "Since building Godot takes a while, you want to dedicate as many CPU threads as possible to the task. This is what the ``-j`` parameter does. Here, the command assigns 4 CPU threads to compiling Godot."
#: ../../docs/contributing/workflow/bisecting_regressions.rst:162
msgid "Run the engine"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:116
#: ../../docs/contributing/workflow/bisecting_regressions.rst:164
msgid "Run the binary located in the ``bin/`` folder and try to reproduce the bug."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:118
#: ../../docs/contributing/workflow/bisecting_regressions.rst:168
msgid ":ref:`Double-check the output file name <doc_introduction_to_the_buildsystem_resulting_binary>` in ``bin/`` to make sure you're actually running the binary you've just compiled. Different Godot versions will output binaries with different names."
msgstr ""
#: ../../docs/contributing/workflow/bisecting_regressions.rst:172
msgid "If the build **still** exhibits the bug, run the following command:"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:124
#: ../../docs/contributing/workflow/bisecting_regressions.rst:178
msgid "If the build **does not** exhibit the bug, run the following command:"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:130
#: ../../docs/contributing/workflow/bisecting_regressions.rst:184
msgid "After entering one of the commands above, Git will switch to a different commit. You should now build Godot again, try to reproduce the bug, then enter ``git bisect good`` or ``git bisect bad`` depending on the result. You'll have to repeat this several times. The longer the commit range, the more steps will be required. 5 to 10 steps are usually sufficient to find most regressions; Git will remind you of the number of steps remaining (in the worst case scenario)."
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:137
#: ../../docs/contributing/workflow/bisecting_regressions.rst:191
msgid "Once you've completed enough steps, Git will display the commit hash where the regression appeared. Write this commit hash as a comment to the GitHub issue you've bisected. This will help in solving the issue. Thanks again for contributing to Godot :)"
msgstr ""
#: ../../docs/community/contributing/bisecting_regressions.rst:144
#: ../../docs/contributing/workflow/bisecting_regressions.rst:198
msgid "You can read the full documentation on ``git bisect`` `here <https://git-scm.com/docs/git-bisect>`__."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,325 +16,386 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/bug_triage_guidelines.rst:4
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:4
msgid "Bug triage guidelines"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:6
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:6
msgid "This page describes the typical workflow of the bug triage team aka bugsquad when handling issues and pull requests on Godot's `GitHub repository <https://github.com/godotengine/godot>`__. It is bound to evolve together with the bugsquad, so do not hesitate to propose modifications to the following guidelines."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:13
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:13
msgid "Issues management"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:15
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:15
msgid "GitHub proposes various features to manage issues:"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:17
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:17
msgid "Set one or several labels from a predefined list"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:18
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:18
msgid "Set one milestone from a predefined list"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:19
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:19
msgid "Keep track of the issue in the project dashboard"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:20
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:20
msgid "Define one contributor as \"assignee\" among the Godot engine organization members"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:23
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:23
msgid "As the Godot engine organization on GitHub currently has a restricted number of contributors, we do not use assignees extensively for now. All contributors are welcome to take on any issue, if relevant after mentioning it on the issue ticket and/or discussing the best way to resolve it with other developers."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:29
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:29
msgid "For the time being, we do not use the project dashboard feature either."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:31
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:31
msgid "As far as possible, we try to assign labels (and milestones, when relevant) to both issues and pull requests."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:35
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:35
msgid "Labels"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:37
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:37
msgid "The following labels are currently defined in the Godot repository:"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:39
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:39
msgid "**Categories:**"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:41
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:41
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:158
msgid "*Archived*: either a duplicate of another issue, or invalid. Such an issue would also be closed."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:43
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:43
msgid "*Breaks compat*: describes something that can only be fixed by breaking compatibility with existing projects."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:45
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:45
msgid "*Bug*: describes something that is not working properly."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:46
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:46
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:162
msgid "*Cherrypick*: describes something that can be backported to a stable branch after being merged in the ``master`` branch."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:48
msgid "*Crash:* describes a bug that causes the engine to crash. This label is only used for \"hard\" crashes, not freezes."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:50
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:48
msgid "*Confirmed*: has been confirmed by at least one other contributor than the bug reporter (typically for *Bug* reports). The purpose of this label is to let developers know which issues are still reproducible when they want to select what to work on. It is therefore a good practice to add in a comment on what platform and what version or commit of Godot the issue could be reproduced; if a developer looks at the issue one year later, the *Confirmed* label may not be relevant anymore."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:58
#: ../../docs/community/contributing/bug_triage_guidelines.rst:158
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:56
msgid "*Crash:* describes a bug that causes the engine to crash. This label is only used for \"hard\" crashes, not freezes."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:58
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:165
msgid "*Discussion*: the issue is not consensual and needs further discussion to define what exactly should be done to address the topic."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:61
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:61
msgid "*Documentation*: issue related to the documentation. Mainly to request enhancements in the API documentation. Issues related to the ReadTheDocs documentation should be filed on the `godot-docs <https://github.com/godotengine/godot-docs>`_ repository."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:65
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:65
msgid "*Enhancement*: describes a proposed enhancement to an existing functionality."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:67
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:67
msgid "*Feature proposal*: describes a wish for a new feature to be implemented. Note that the main Godot repository no longer accepts feature requests. Please use `godot-proposals <https://github.com/godotengine/godot-proposals>`__ instead."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:71
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:71
msgid "*For PR meeting*: the issue needs to be discussed in a pull request meeting. These meetings are public and are held on the `Godot Contributors Chat <https://chat.godotengine.org/>`_."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:73
msgid "*Good first issue*: the issue is *assumed* to be an easy one to fix, which makes it a great fit for new contributors who need to become familiar with the code base."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:73
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:169
msgid "*Good first issue*: the issue is *assumed* to be an easy one to fix, which makes it a great fit for new contributors who want to become familiar with the code base. It should be removed while an active PR is available, that resolves this issue."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:76
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:77
msgid "*High priority:* the issue is particularly important as it can prevent people from releasing their projects or cause data loss."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:78
msgid "*Needs work*: the pull request needs additional work before it can be merged."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:79
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:79
msgid "*Needs testing*: the issue/pull request could not be completely tested and thus need further testing. This can mean that it needs to be tested on different hardware/software configurations or even that the steps to reproduce are not certain."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:83
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:83
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:173
msgid "*Needs work*: the pull request needs additional work before it can be merged."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:84
msgid "*Performance*: issues that directly impact engine or editor performance. Can also be used for pull requests that improve performance or add low-end-friendly options. Should not be coupled with *Usability*."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:86
msgid "*PR welcome / Hero wanted!*: Contributions for issues with these labels are especially welcome. Note that this **doesn't** mean you can't work on issues without these labels."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:87
msgid "*Production*: Relates to the production team."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:89
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:88
msgid "*Regression*: the bug appeared after a stable release not exhibiting the bug was released."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:91
#: ../../docs/community/contributing/bug_triage_guidelines.rst:169
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:90
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:175
msgid "*Salvageable*: the pull request can't be merged due to design issues or merge conflicts and its author is not active anymore. However, it can still be picked up by an external contributor to bring it to a mergeable state. To do so, you need to open a new pull request based on the original pull request."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:95
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:94
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:179
msgid "*Tracker*: issue used to track other issues (like all issues related to the plugin system)."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:97
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:96
msgid "*Usability*: issues that directly impact user usability. Should not be coupled with *Performance*."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:99
msgid "The categories are used for general triage of the issues. They can be combined in some way when relevant, e.g. an issue can be labelled *Enhancement* and *Usability* at the same time if it's an issue to improve usability. Or *Feature proposal* and *Discussion* if it's a non-consensual feature request, or one that is not precise enough to be worked on."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:98
msgid "The categories are used for general triage of the issues. They can be combined in some way when relevant, e.g. an issue can be labelled *Enhancement* and *Usability* at the same time if it's an issue to improve usability. Or *Feature proposal* and *Discussion* if it's a non-consensual feature request, or one that is not precise enough to be worked on. At least one of the categories *Bug*, *Enhancement* or *Discussion* is used to describe an issue or pull request."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:105
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:106
msgid "**Topics:**"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:107
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:108
msgid "*2D*: relates to 2D-specific issues. Should be coupled with one of the labels below, and should not be coupled with *3D*."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:108
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:109
msgid "*3D*: relates to 3D-specific issues. Should be coupled with one of the labels below, and should not be coupled with *2D*."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:109
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:110
msgid "*Animation*: relates to the Animation system, editors and importers."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:111
msgid "*Assetlib*: relates to issues with the asset library."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:110
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:112
msgid "*Audio*: relates to the audio features (low and high level)."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:111
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:113
msgid "*Buildsystem*: relates to building issues, either linked to the SCons buildsystem or to compiler peculiarities."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:113
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:115
msgid "*Codestyle*: relates to the programming style used within the codebase."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:114
msgid "*Core*: anything related to the core engine. It might be further split later on as it's a pretty big topic."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:116
msgid "*Core*: anything related to the core engine. Specific topics are split off separately as they crop up."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:116
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:117
msgid "*Dotnet*: relates to the C# / Dotnet bindings."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:118
msgid "*Editor*: relates to issues in the editor (mainly UI)."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:117
msgid "*GDNative*: relates to the GDNative module."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:119
msgid "*Export*: relates to the export system and templates."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:118
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:120
msgid "*GDExtension*: relates to the GDExtension system for native extensions."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:121
msgid "*GDScript*: relates to GDScript."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:119
msgid "*GUI*: relates to GUI (Control) nodes."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:122
msgid "*GUI*: relates to GUI (Control) nodes or to Nodes that compose user interfaces."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:120
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:123
msgid "*Import*: relates to the resource import system."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:121
msgid "*Input*: relates to input system."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:124
msgid "*Input*: relates to the input system."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:122
msgid "*Mono*: relates to the C# / Mono bindings."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:125
msgid "*Multiplayer*: relates to multiplayer (high-level networking) systems."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:123
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:126
msgid "*Navigation*: relates to the navigation system (including A* and navmeshes)."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:124
msgid "*Network*: relates to networking."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:127
msgid "*Network*: relates to (lot-level) networking."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:125
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:128
msgid "*Particles*: particles, particle systems and their editors."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:129
msgid "*Physics*: relates to the physics engine (2D/3D)."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:126
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:130
msgid "*Plugin*: relates to problems encountered while writing plugins."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:127
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:131
msgid "*Porting*: relates to some specific platforms or exporting projects."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:128
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:132
msgid "*Rendering*: relates to the 2D and 3D rendering engines."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:129
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:133
msgid "*Shaders*: relates to the Godot shader language or visual shaders."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:130
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:134
msgid "*Tests*: relates to unit tests."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:131
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:135
msgid "*Thirdparty*: relates to third-party libraries used in Godot."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:132
msgid "*VisualScript*: relates to issues with the visual scripting language (*not* visual shaders)."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:133
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:136
msgid "*XR*: relates to Augmented Reality or Virtual Reality."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:135
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:138
msgid "Issues would typically correspond to only one topic, though it's not unthinkable to see issues that fit two bills. The general idea is that there will be specialized contributors teams behind all topics, so they can focus on the issues labelled with their team's topic."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:140
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:143
msgid "**Platforms:**"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:142
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:145
msgid "*Android*, *HTML5*, *iOS*, *Linux*, *macOS*, *Windows*, *UWP*"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:144
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:147
msgid "By default, it is assumed that a given issue applies to all platforms. If one of the platform labels is used, it is then exclusive and the previous assumption doesn't stand anymore (so if it's a bug on e.g. Android and Linux exclusively, select those two platforms)."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:150
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:153
msgid "Documentation labels"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:152
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:155
msgid "In the `documentation repository <https://github.com/godotengine/godot-docs>`__, we use the following labels:"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:155
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:160
msgid "*Bug*: Incorrect information in an existing page. Not to be used for *missing* information."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:157
msgid "*Class reference*: the issue is about the class reference, not a documentation page."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:164
msgid "*Dependencies*: describes pull requests that update a dependency file."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:161
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:168
msgid "*Enhancememnt*: new information to be added in an existing page."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:162
msgid "*New page*: a new page to be created."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:174
msgid "*Python*: Pull requests that update Python code."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:163
msgid "*Hero wanted!*: contributions for issues with these labels are especially welcome. Note that this **doesn't** mean you can't work on issues without these labels."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:182
msgid "**Area:**"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:166
msgid "*Organization*: The issue involves moving pages around or reorganizing content."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:184
msgid "*About*: Issues and PRs related to the About section of the documentation and other general articles."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:167
msgid "*Redirect*: a redirection needs to be created in the Read the Docs backend. Only administrators can do this."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:185
msgid "*Class reference*: the issue is about the class reference, not a documentation page."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:173
msgid "*Topic:Mono*: the issue is about C# support in Godot."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:186
msgid "*Community*: Issues and PRs related to the Community section of the documentation."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:174
msgid "*Topic:Website*: the issue relates to the Sphinx/Read the Docs frontend or backend, not the documentation contents."
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:187
msgid "*Contributing*: Issues and PRs related to the Contributing/Development section of the documentation."
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:178
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:188
msgid "*Getting started*: Issues and PRs related to the Getting Started section of the documentation."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:189
msgid "*Manual*: Issues and PRs related to the Manual/Tutorials section of the documentation."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:191
msgid "**Content:**"
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:193
msgid "*Images*: Issues and PRs involving outdated or incorrect images in articles."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:194
msgid "*New page*: Issues and PRs related to creation of new documentation pages for new or undocumented features."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:195
msgid "*Organization*: Issues and PRs related to reorganizing the content."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:196
msgid "*Proofreading*: Issues and PRs related to proofreading the documentation."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:197
msgid "*Redirect*: Issues and PRs involving moving content and adding a redirect rule on the backend."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:198
msgid "*Website*: Issues related to adding website features and fixing bugs, whether on the front or back-end,"
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:200
msgid "**Topic:**"
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:202
msgid "The available topics describe the same content as the topics in the main repository."
msgstr ""
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:206
msgid "Milestones"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:180
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:208
msgid "`Milestones <https://github.com/godotengine/godot/milestones>`_ correspond to planned future versions of Godot for which there is an existing roadmap. Issues that fit in the said roadmap should be filed under the corresponding milestone; if they don't correspond to any current roadmap, they should be left without milestone. As a rule of thumb, an issue corresponds to a given milestone if it concerns a feature that is new in the milestone, or a critical bug that can't be accepted in any future stable release, or anything that Juan wants to work on right now. :)"
msgstr ""
#: ../../docs/community/contributing/bug_triage_guidelines.rst:189
#: ../../docs/contributing/workflow/bug_triage_guidelines.rst:217
msgid "Contributors are free to pick issues regardless of their assigned milestone; if a fix is proposed for a bug that was not deemed urgent and thus without milestone, it would likely still be very welcome."
msgstr ""

View File

@@ -0,0 +1,29 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/workflow/index.rst:4
msgid "Contribution workflow"
msgstr ""
#: ../../docs/contributing/workflow/index.rst:6
msgid "Godot is a large project, both in terms of the codebase and the workload for contributors. The guides below serve as a helper when you get stuck dealing with Git or GitHub, or if you are generally interested in how maintainers approach the project."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -0,0 +1,425 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:4
msgid "Pull request review process"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:8
msgid "This page is intended to provide insight into the pull request (PR) review process that we aspire to. As such, it is primarily targeted at engine maintainers who are responsible for reviewing and approving pull requests. That being said, much of the content is useful for prospective contributors wanting to know how to ensure that their PR is merged."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:14
msgid "From a high level, the ideal life cycle of a pull request looks like the following:"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:17
msgid "A contributor opens a PR that fixes a specific problem (optimally closing a GitHub `issue <https://github.com/godotengine/godot>`_ or implementing a `proposal <https://github.com/godotengine/godot-proposals>`_)."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:21
msgid "Other contributors provide feedback on the PR (including reviewing and/or approving the PR, as appropriate)."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:24
msgid "An engine maintainer reviews the code and provides feedback, requests changes, or approves the pull request, as appropriate."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:27
msgid "Another maintainer reviews the code with a focus on code style/clarity and approves it once satisfied."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:30
msgid "A team leader or a member of the `production team <https://godotengine.org/teams#production>`_ merges the pull request if satisfied that it has been sufficiently reviewed."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:34
msgid "This document will explain steps 2, 3, 4, and 5 in more detail. For a more detailed explanation of the pull request workflow please see the :ref:`pull request workflow document <doc_pr_workflow>`."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:39
msgid "In practice these steps may blend together. Oftentimes maintainers will provide comments on code style and code quality at the same time and will approve a pull request for both."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:43
msgid "Typically the first interaction on a pull request will be an engine maintainer assigning tags to the pull request and flagging it for review by someone familiar with that area of code."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:47
msgid "Engine maintainers are folks who are \"members\" of the Godot project repository on GitHub and/or are listed on the `Teams page <https://godotengine.org/teams>`_ on the Godot website. Maintainers are responsible for a given area of the engine. Typically this means they are the people who are given more trust to approve and recommend pull requests for merging."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:53
msgid "Even if you are not a maintainer, you can still help by reviewing code, providing feedback on PRs and testing PRs locally on your machine to confirm that they work as intended. Many of the currently active maintainers started out doing this before they became maintainers."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:59
msgid "Code review and testing"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:61
msgid "The following is a list of things that contributors and engine maintainers can do to conduct a substantive code review of a pull request."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:65
msgid "If you want to conduct a code review, but can't do everything on this list, say that in your review comment. For example, it is still very helpful to provide comments on code, even if you can't build the pull request locally to test the pull request (or vice versa). Feel free to review the code, just remember to make a note at the end of your review that you have reviewed the code only and have not tested the changes locally."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:73
msgid "1. Confirm that the problem exists"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:75
msgid "PRs need to solve problems and problems need to be documented. Make sure that the pull request links and closes (or at least addresses) a bug or a proposal. If it doesn't, consider asking the contributor to update the opening message of the PR to explain the problem that the PR aims to solve in more detail."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:81
msgid "It should be clear _why_ a pull request is needed before it is merged. This assists reviewers in determining whether a PR does what it says it does and it helps contributors in the future understand why the code is the way it is."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:86
msgid "2. Test the PR and look for regressions"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:88
msgid "While strict code review and CI help to ensure that all pull requests work as intended, mistakes happen and sometimes contributors push code that creates a problem in addition to solving a problem. Maintainers will avoid merging code that contains a regression even if it solves the problem as intended."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:93
msgid "When reviewing a pull request, ensure that the PR does what it says it does (i.e. fixes the linked bug or implements the new feature) and nothing outside of the PR target area is broken by the change. You can do this by running the editor and trying out some common functions of the editor (adding objects to a scene, running GDScript, opening and closing menus etc.). Also, while reviewing the code, look for suspicious changes in other parts of the engine. Sometimes during rebasing changes slip through that contributors are not aware of."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:102
msgid "3. Do a code review"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:104
msgid "Code reviews are usually done by people who are already experienced in a given area. They may be able to provide ideas to make code faster, more organized, or more idiomatic. But, even if you are not very experienced, you may want to conduct a code review to provide feedback within the scope of what you are comfortable reviewing. Doing so is valuable for the area maintainer (as a second set of eyes on a problem is always helpful) and it is also helpful for you as it will help you get more familiar with that area of code and will expose you to how other people solve problems. In fact, reviewing the code of experienced engine maintainers is a great way to get to know the codebase."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:114
msgid "Here are some things to think about and look out for as you review the code:"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:116
msgid "**Code only touches the areas announced in the PR (and the commit message).**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:119
msgid "It can be tempting to fix random things in the code, as you see them. However, this can quickly make a pull request difficult to review and can make it hard to dig through in the commit history. Small touch-ups next to the related area are alright, but often bugs that you can find along the way are better fixed in their own PRs."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:125
msgid "**Code properly uses Godot's own APIs and patterns.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:127
msgid "Consistency is very important, and a solution that already exists in the codebase is preferable to an ad-hoc solution."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:130
msgid "**Are core areas affected by the change?**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:132
msgid "Sometimes a PR that is supposed to solve a local problem can have a far-reaching effect way outside of its scope. Usually it is best to keep code changes local to where the problem arises. If you think that the solution requires changes outside the scope of the problem, it is usually best to seek the opinion of a team leader who may have another idea for how to solve the problem."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:140
msgid "4. Iterate with the contributor and improve the PR"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:142
msgid "Maintainers should provide feedback and suggestions for improvement if they spot things in the code that they would like changed. Preferably, suggestions should come in order of importance: first, address overall code design and the approach to solving the problem, then make sure the code is complying with the engine's best practices, and lastly, do the :ref:`code style review <doc_code_style_review>`."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:150
msgid "**Communicate barriers to merging early in the review process.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:152
msgid "If the PR has clear blockers or will likely not get merged for whatever other reason, that fact should be communicated as early and clearly as possible. We want to avoid stringing people along because it feels bad to say \"sorry, no\"."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:156
msgid "As you review pull requests, keep the Godot `Code of Conduct <https://godotengine.org/code-of-conduct>`_ in mind. Especially the following:"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:159
msgid "Politeness is expected at all times. Be kind and courteous."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:161
msgid "Always assume positive intent from others."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:163
msgid "Feedback is always welcome but keep your criticism constructive."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:165
msgid "Here are some things to avoid as you iterate on a pull request with a contributor:"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:168
msgid "**Needless double reviews.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:170
msgid "In other words, review the full PR at once and avoid coming back endless times to point out issues that you could have noted in the first review. Of course, this can't always be avoided, but we should try to catch everything at once."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:174
msgid "**Being overly nitpicky.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:176
msgid "Code quality can be flexible depending on the area of the engine you are working in. In general, our standard for code quality is much higher in core areas and in performance-sensitive areas than it is in editor code for example."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:181
msgid "**Expanding the scope of a pull request.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:183
msgid "Providing context or related/similar issues or proposals that may be fixed similarly can be helpful, but adding a \"may as well fix that thing over there as well while at it\" or \"could we add to this as well?\" isn't always fair to the contributor. Use your judgement when deciding whether additional fixes are within scope, but try to keep the scope as close to the original pull request as possible."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:190
msgid "And ultimately, don't feel pressured to deal with the PR all alone. Feel free to ask for a helping hand on the `Godot Contributors Chat <https://chat.godotengine.org>`_, in the appropriate channel or in #general. Other teams may already be tagged for review, so you can also wait or ask for their assistance."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:197
msgid "5. Approve the pull request"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:199
msgid "After reviewing the code, if you think that the code is ready to be merged into the engine, then go ahead and \"approve\" it. Make sure to also comment and specify the nature of your review (i.e. say whether you ran the code locally, whether you reviewed for style as well as correctness, etc.). Even if you are not an engine maintainer, approving a pull request signals to others that the code is good and likely solves the problem the PR says it does. Approving a pull request as a non-engine maintainer does not guarantee that the code will be merged, other people will still review it, so don't be shy."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:211
msgid "Code style review"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:213
msgid "Generally speaking, we aim to conduct a code review before a style/clarity review as contributors typically want to know if their general approach is acceptable before putting in the effort to make nitpicky changes to style. In other words, maintainers shouldn't ask contributors to change the style of code that may need to be rewritten in subsequent reviews. Similarly, maintainers should avoid asking for contributors to rebase PRs if the PR has not been reviewed."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:221
msgid "That being said, not everyone feels confident enough to provide a review on code correctness, in that case, providing comments on code style and clarity ahead of a more substantive code review is totally appropriate and more than welcome."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:225
msgid "In practice the code style review can be done as part of the substantive code review. The important thing is that both the substantive code and the code style need to be reviewed and considered before a pull request is merged."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:229
msgid "When reviewing code style pay particular attention to ensuring that the pull request follows the :ref:`doc_code_style_guidelines`. While ``clang-format`` and various CI checks can catch a lot of inconsistencies, they are far from perfect and are unable to detect some issues. For example, you should check that:"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:234
msgid "The style of header includes is respected."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:235
msgid "Identifiers use ``snake_case`` and follow our naming conventions."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:236
msgid "Method parameters start with ``p_*`` or ``r_*`` (if they are used to return a value)."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:238
msgid "Braces are used appropriately, even for one-liner conditionals."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:239
msgid "Code is properly spaced (exactly one empty line between methods, no unnecessary empty lines inside of method bodies)."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:244
msgid "This list is not complete and doesn't aim to be complete. Refer to the linked style guide document for a complete set of rules. Keep in mind that ``clang-format`` may not catch things you hope it would, so pay attention and try to build a sense of what exactly it can and cannot detect."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:251
msgid "Merging pull requests"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:253
msgid "In general, pull requests should only be merged by members of the production team or team leaders for pull requests in their area of the engine. For example, the networking team leader could merge a networking pull request that doesn't substantially change non-networking sections of code."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:258
msgid "In practice it is best to wait for a member of the production team to merge the pull request as they keep a close eye on the entire codebase and will likely have a better sense of what other recent/upcoming changes this pull request may conflict with (or any other reason that it may make sense to delay the pull request). Feel free to leave a comment saying that the PR should be ready to merge."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:265
msgid "The following are the steps to take before merging a pull request. The degree to which you adhere to these steps can be flexible for simple/straightforward pull requests, but they should be carefully taken for complex or risky pull requests."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:269
msgid "As a contributor you can help move a pull request forward by doing some of these steps yourself."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:273
msgid "1. Get feedback from the right people/teams"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:275
msgid "Production team members should ensure that the right people look at a pull request before it is merged. In some cases this may require multiple people to weigh in. In other cases, only one substantive approval is needed before the code can be merged."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:280
msgid "In general, try not to merge things based on one review alone, especially if it is your own. Get a second opinion from another maintainer, and make sure all the teams that may be impacted have been reasonably represented by the reviewers. For example, if a pull request adds to the documentation, it's often useful to let the area maintainers check it for factual correctness and let documentation maintainers check it for formatting, style, and grammar."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:287
msgid "A good rule of thumb is that at least one subject matter expert should have approved the pull request for correctness, and at least one other maintainer should have approved the pull request for code style. Either of those people could be the person merging the pull request."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:292
msgid "Make sure that the reviews and approvals were left by people competent in that specific engine area. It is possible that even a long-standing member of the Godot organization left a review without having the relevant expertise."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:298
msgid "An easy way to find PRs that may be ready for merging is filtering by approved PRs and sorting by recently updated. For example, in the main Godot repository, you can use `this link <https://github.com/godotengine/godot/pulls?q=is%3Apr+is%3Aopen+review%3Aapproved+sort%3Aupdated-desc>`_."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:304
msgid "2. Get feedback from the community"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:306
msgid "If a pull request is having trouble attracting reviewers, you may need to reach out more broadly to ask for help reviewing. Consider asking:"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:309
msgid "the person who reported the bug if the pull request fixes the bug for them,"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:310
msgid "contributors who have recently edited that file if they could take a look, or"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:311
msgid "a more experienced maintainer from another area if they could provide feedback."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:314
msgid "3. Git checklist"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:316
msgid "**Make sure that the PR comes in one commit.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:318
msgid "When each commit is self-contained and could be used to build a clean and working version of the engine, it may be okay to merge a pull request with multiple commits, but in general, we require that all pull requests only have one commit. This helps us keep the Git history clean."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:323
msgid "**Fixes made during the review process must be squashed into the main commit.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:326
msgid "For multi-commit PRs check that those fixes are amended in the relevant commits, and are not just applied on top of everything."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:329
msgid "**Make sure that the PR has no merge conflicts.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:331
msgid "Contributors may need to rebase their changes on top of the relevant branch (e.g. ``master`` or ``3.x``) and manually fix merge conflicts. Even if there are no merge conflicts, contributors may need to rebase especially old PRs as the GitHub conflict checker may not catch all conflicts, or the CI may have changed since it was originally run."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:337
msgid "**Check for proper commit attribution.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:339
msgid "If a contributor uses an author signature that is not listed in their GitHub account, GitHub won't link the merged pull request to their account. This keeps them from getting proper credit in the GitHub history and makes them appear like a new contributor on the GitHub UI even after several contributions."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:345
msgid "Ultimately, it's up to the user if they want to fix it, but they can do so by authoring the Git commit with the same email they use for their GitHub account, or by adding the email they used for the Git commit to their GitHub profile."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:350
msgid "**Check for proper commit messages.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:352
msgid "While we don't have a very strict ruleset for commit messages, we still require them to be short yet descriptive and use proper English. As a maintainer you've probably written them enough times to know how to make one, but for a general template think about *\"Fix <issue> in <part of codebase>\"*. For a more detailed recommendation see the `contributing.md <https://github.com/godotengine/godot/blob/master/CONTRIBUTING.md#format-your-commit-messages-with-readability-in-mind>`_ page in the main Godot repository."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:361
msgid "4. GitHub checklist"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:363
msgid "**Validate the target branch of the PR.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:365
msgid "Most Godot development happens around in the ``master`` branch. Therefore most pull requests must be made against it. From there pull requests can then be backported to other branches. Be wary of people making PRs on the version they are using (e.g, ``3.3``) and guide them to make a change against a higher-order branch (e.g. ``3.x``). If the change is not applicable for the ``master`` branch, the initial PR can be made against the current maintenance branch, such as ``3.x``. It's okay for people to make multiple PRs for each target branch, especially if the changes cannot be easily backported. Cherry-picking is also an option, if possible. Use the appropriate labels if the PR can be cherrypicked (e.g. ``cherrypick:3.x``)."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:378
msgid "It is possible to change the target branch of the PR, that has already been submitted, but be aware of the consequences. As it cannot be synchronized with the push, the target branch change will inevitable tag the entire list of maintainers for review. It may also render the CI incapable of running properly. A push should help with that, but if nothing else, recommend opening a new, fresh PR."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:385
msgid "**Make sure that the appropriate milestone is assigned.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:387
msgid "This will make it more obvious which version would include the submitted changes, should the pull request be merged now. Note, that the milestone is not a binding contract and does not guarantee that this version is definitely going to include the PR. If the pull request is not merged before the version is released, the milestone will be moved (and the PR itself may require a target branch change)."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:394
msgid "Similarly, when merging a PR with a higher milestone than the current version, or a \"wildcard\" milestone (e.g. \"4.x\"), ensure to update the milestone to the current version."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:398
msgid "**Make sure that the opening message of the PR contains the magic words \"Closes #...\" or \"Fixes #...\".**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:401
msgid "These link the PR and the referenced issue together and allow GitHub to auto-close the latter when you merge the changes. Note, that this only works for the PRs that target the ``master`` branch. For others you need to pay attention and close the related issues manually. Do it with *\"Fixed by #...\"* or *\"Resolved by #...\"* comment to clearly indicate the act for future contributors."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:408
msgid "**For the issues that get closed by the PR add the closest relevant milestone.**"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:411
msgid "In other words, if the PR is targeting the ``master`` branch, but is then also cherrypicked for ``3.x``, the next ``3.x`` release would be the appropriate milestone for the closed issue."
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:416
msgid "5. Merge the pull request"
msgstr ""
#: ../../docs/contributing/workflow/pr_review_guidelines.rst:418
msgid "If it is appropriate for you to be merging a pull request (i.e. you are on the production team or you are the team leader for that area), you are confident that the pull request has been sufficiently reviewed, and once you carry out these steps you can go ahead and merge the pull request."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,379 +16,383 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/pr_workflow.rst:4
#: ../../docs/contributing/workflow/pr_workflow.rst:4
msgid "Pull request workflow"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:8
#: ../../docs/contributing/workflow/pr_workflow.rst:8
msgid "The so-called \"PR workflow\" used by Godot is common to many projects using Git, and should be familiar to veteran free software contributors. The idea is that only a small number (if any) commit directly to the *master* branch. Instead, contributors *fork* the project (i.e. create a copy of it, which they can modify as they wish), and then use the GitHub interface to request a *pull* from one of their fork's branches to one branch of the original (often named *upstream*) repository."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:16
#: ../../docs/contributing/workflow/pr_workflow.rst:16
msgid "The resulting *pull request* (PR) can then be reviewed by other contributors, which might approve it, reject it, or most often request that modifications be done. Once approved, the PR can then be merged by one of the core developers, and its commit(s) will become part of the target branch (usually the *master* branch)."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:22
#: ../../docs/contributing/workflow/pr_workflow.rst:22
msgid "We will go together through an example to show the typical workflow and associated Git commands. But first, let's have a quick look at the organization of Godot's Git repository."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:27
#: ../../docs/contributing/workflow/pr_workflow.rst:27
msgid "Git source repository"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:29
#: ../../docs/contributing/workflow/pr_workflow.rst:29
msgid "The `repository on GitHub <https://github.com/godotengine/godot>`_ is a `Git <https://git-scm.com>`_ code repository together with an embedded issue tracker and PR system."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:33
#: ../../docs/contributing/workflow/pr_workflow.rst:33
msgid "If you are contributing to the documentation, its repository can be found `here <https://github.com/godotengine/godot-docs>`_."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:36
#: ../../docs/contributing/workflow/pr_workflow.rst:36
msgid "The Git version control system is the tool used to keep track of successive edits to the source code - to contribute efficiently to Godot, learning the basics of the Git command line is *highly* recommended. There exist some graphical interfaces for Git, but they usually encourage users to take bad habits regarding the Git and PR workflow, and we therefore recommend not to use them. In particular, we advise not to use GitHub's online editor for code contributions (although it's tolerated for small fixes or documentation changes) as it enforces one commit per file and per modification, which quickly leads to PRs with an unreadable Git history (especially after peer review)."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:46
#: ../../docs/contributing/workflow/pr_workflow.rst:46
msgid "The first sections of Git's \"Book\" are a good introduction to the tool's philosophy and the various commands you need to master in your daily workflow. You can read them online on the `Git SCM <https://git-scm.com/book/en/v2>`_ website. You can also try out `GitHub's interactive guide <https://try.github.io/>`__."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:52
#: ../../docs/contributing/workflow/pr_workflow.rst:52
msgid "The branches on the Git repository are organized as follows:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:54
#: ../../docs/contributing/workflow/pr_workflow.rst:54
msgid "The ``master`` branch is where the development of the next major version occurs. As a development branch, it can be unstable and is not meant for use in production. This is where PRs should be done in priority."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:58
#: ../../docs/contributing/workflow/pr_workflow.rst:58
msgid "The stable branches are named after their version, e.g. ``3.1`` and ``2.1``. They are used to backport bugfixes and enhancements from the ``master`` branch to the currently maintained stable release (e.g. 3.1.2 or 2.1.6). As a rule of thumb, the last stable branch is maintained until the next minor version (e.g. the ``3.0`` branch was maintained until the release of Godot 3.1). If you want to make PRs against a maintained stable branch, please check first if your changes are also relevant for the ``master`` branch, and if so make the PR for the ``master`` branch in priority. Release managers can then cherry-pick the fix to a stable branch if relevant."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:68
#: ../../docs/contributing/workflow/pr_workflow.rst:68
msgid "There might occasionally be feature branches, usually meant to be merged into the ``master`` branch at some time."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:72
#: ../../docs/contributing/workflow/pr_workflow.rst:72
msgid "Forking and cloning"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:74
#: ../../docs/contributing/workflow/pr_workflow.rst:74
msgid "The first step is to *fork* the `godotengine/godot <https://github.com/godotengine/godot>`_ repository on GitHub. To do so, you will need to have a GitHub account and to be logged in. In the top right corner of the repository's GitHub page, you should see the \"Fork\" button as shown below:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:81
#: ../../docs/contributing/workflow/pr_workflow.rst:81
msgid "Click it, and after a while you should be redirected to your own fork of the Godot repo, with your GitHub username as namespace:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:86
#: ../../docs/contributing/workflow/pr_workflow.rst:86
msgid "You can then *clone* your fork, i.e. create a local copy of the online repository (in Git speak, the *origin remote*). If you haven't already, download Git from `its website <https://git-scm.com>`_ if you're using Windows or macOS, or install it through your package manager if you're using Linux."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:91
#: ../../docs/contributing/workflow/pr_workflow.rst:91
msgid "If you are on Windows, open Git Bash to type commands. macOS and Linux users can use their respective terminals."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:94
#: ../../docs/contributing/workflow/pr_workflow.rst:94
msgid "To clone your fork from GitHub, use the following command:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:100
#: ../../docs/contributing/workflow/pr_workflow.rst:100
msgid "In our examples, the \"$\" character denotes the command line prompt on typical UNIX shells. It is not part of the command and should not be typed."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:104
#: ../../docs/contributing/workflow/pr_workflow.rst:104
msgid "After a little while, you should have a ``godot`` directory in your current working directory. Move into it using the ``cd`` command:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:111
#: ../../docs/contributing/workflow/pr_workflow.rst:111
msgid "We will start by setting up a reference to the original repository that we forked:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:118
#: ../../docs/contributing/workflow/pr_workflow.rst:118
msgid "This will create a reference named ``upstream`` pointing to the original ``godotengine/godot`` repository. This will be useful when you want to pull new commits from its ``master`` branch to update your fork. You have another remote reference named ``origin``, which points to your fork (``USERNAME/godot``)."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:123
#: ../../docs/contributing/workflow/pr_workflow.rst:123
msgid "You only need to do the above steps once, as long as you keep that local ``godot`` folder (which you can move around if you want, the relevant metadata is hidden in its ``.git`` subfolder)."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:127
#: ../../docs/contributing/workflow/pr_workflow.rst:127
msgid "*Branch it, pull it, code it, stage it, commit, push it, rebase it... technologic.*"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:130
#: ../../docs/contributing/workflow/pr_workflow.rst:130
msgid "This bad take on Daft Punk's *Technologic* shows the general conception Git beginners have of its workflow: lots of strange commands to learn by copy and paste, hoping they will work as expected. And that's actually not a bad way to learn, as long as you're curious and don't hesitate to question your search engine when lost, so we will give you the basic commands to know when working in Git."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:138
msgid "In the following, we will assume as an example that you want to implement a feature in Godot's project manager, which is coded in the ``editor/project_manager.cpp`` file."
#: ../../docs/contributing/workflow/pr_workflow.rst:138
msgid "In the following, we will assume as an example that you want to implement a feature in Godot's Project Manager, which is coded in the ``editor/project_manager.cpp`` file."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:143
#: ../../docs/contributing/workflow/pr_workflow.rst:143
msgid "Branching"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:145
#: ../../docs/contributing/workflow/pr_workflow.rst:145
msgid "By default, the ``git clone`` should have put you on the ``master`` branch of your fork (``origin``). To start your own feature development, we will create a feature branch:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:157
#: ../../docs/contributing/workflow/pr_workflow.rst:157
msgid "This command is equivalent:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:164
#: ../../docs/contributing/workflow/pr_workflow.rst:164
msgid "If you want to go back to the ``master`` branch, you'd use:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:170
#: ../../docs/contributing/workflow/pr_workflow.rst:170
msgid "You can see which branch you are currently on with the ``git branch`` command:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:180
#: ../../docs/contributing/workflow/pr_workflow.rst:180
msgid "Be sure to always go back to the ``master`` branch before creating a new branch, as your current branch will be used as the base for the new one. Alternatively, you can specify a custom base branch after the new branch's name:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:189
#: ../../docs/contributing/workflow/pr_workflow.rst:189
msgid "Updating your branch"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:191
#: ../../docs/contributing/workflow/pr_workflow.rst:191
msgid "This would not be needed the first time (just after you forked the upstream repository). However, the next time you want to work on something, you will notice that your fork's ``master`` is several commits behind the upstream ``master`` branch: pull requests from other contributors would have been merged in the meantime."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:197
#: ../../docs/contributing/workflow/pr_workflow.rst:197
msgid "To ensure there won't be conflicts between the feature you develop and the current upstream ``master`` branch, you will have to update your branch by *pulling* the upstream branch."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:205
#: ../../docs/contributing/workflow/pr_workflow.rst:205
msgid "The ``--rebase`` argument will ensure that any local changes that you committed will be re-applied *on top* of the pulled branch, which is usually what we want in our PR workflow. This way, when you open a pull request, your own commits will be the only difference with the upstream ``master`` branch."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:210
#: ../../docs/contributing/workflow/pr_workflow.rst:210
msgid "While rebasing, conflicts may arise if your commits modified code that has been changed in the upstream branch in the meantime. If that happens, Git will stop at the conflicting commit and will ask you to resolve the conflicts. You can do so with any text editor, then stage the changes (more on that later), and proceed with ``git rebase --continue``. Repeat the operation if later commits have conflicts too, until the rebase operation completes."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:217
#: ../../docs/contributing/workflow/pr_workflow.rst:217
msgid "If you're unsure about what is going on during a rebase and you panic (no worry, we all do the first few times), you can abort the rebase with ``git rebase --abort``. You will then be back to the original state of your branch before calling ``git pull --rebase``."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:222
#: ../../docs/contributing/workflow/pr_workflow.rst:222
msgid "If you omit the ``--rebase`` argument, you will instead create a merge commit which tells Git what to make of the two distinct branches. If any conflicts arise, they would be resolved all at once via this merge commit."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:226
#: ../../docs/contributing/workflow/pr_workflow.rst:226
msgid "While this is a valid workflow and the default behavior of ``git pull``, merge commits within PRs are frowned upon in our PR workflow. We only use them when merging PRs into the upstream branch."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:230
#: ../../docs/contributing/workflow/pr_workflow.rst:230
msgid "The philosophy is that a PR should represent the final stage of the changes made to the codebase, and we are not interested in mistakes and fixes that would have been done in intermediate stages before merging. Git gives us great tools to \"rewrite the history\" and make it as if we got things right the first time, and we're happy to use it to ensure that changes are easy to review and understand long after they have been merged."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:237
#: ../../docs/contributing/workflow/pr_workflow.rst:237
msgid "If you have already created a merge commit without using ``rebase``, or have made any other changes that have resulted in undesired history, the best option is to use an *interactive rebase* on the upstream branch. See the :ref:`dedicated section <doc_pr_workflow_rebase>` for instructions."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:242
#: ../../docs/contributing/workflow/pr_workflow.rst:242
msgid "If at any time you want to *reset* a local branch to a given commit or branch, you can do so with ``git reset --hard <commit ID>`` or ``git reset --hard <remote>/<branch>`` (e.g. ``git reset --hard upstream/master``)."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:246
#: ../../docs/contributing/workflow/pr_workflow.rst:246
msgid "Be warned that this will remove any changes that you might have committed in this branch. If you ever lose commits by mistake, use the ``git reflog`` command to find the commit ID of the previous state that you would like to restore, and use it as argument of ``git reset --hard`` to go back to that state."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:252
#: ../../docs/contributing/workflow/pr_workflow.rst:252
msgid "Making changes"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:254
#: ../../docs/contributing/workflow/pr_workflow.rst:254
msgid "You would then do your changes to our example's ``editor/project_manager.cpp`` file with your usual development environment (text editor, IDE, etc.)."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:258
#: ../../docs/contributing/workflow/pr_workflow.rst:258
msgid "By default, those changes are *unstaged*. The staging area is a layer between your working directory (where you make your modifications) and the local Git repository (the commits and all the metadata in the ``.git`` folder). To bring changes from the working directory to the Git repository, you need to *stage* them with the ``git add`` command, and then to commit them with the ``git commit`` command."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:265
#: ../../docs/contributing/workflow/pr_workflow.rst:265
msgid "There are various commands you should know to review your current work, before staging it, while it is staged, and after it has been committed."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:268
#: ../../docs/contributing/workflow/pr_workflow.rst:268
msgid "``git diff`` will show you the current unstaged changes, i.e. the differences between your working directory and the staging area."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:270
#: ../../docs/contributing/workflow/pr_workflow.rst:270
msgid "``git checkout -- <files>`` will undo the unstaged changes to the given files."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:272
#: ../../docs/contributing/workflow/pr_workflow.rst:272
msgid "``git add <files>`` will *stage* the changes on the listed files."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:273
#: ../../docs/contributing/workflow/pr_workflow.rst:273
msgid "``git diff --staged`` will show the current staged changes, i.e. the differences between the staging area and the last commit."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:275
#: ../../docs/contributing/workflow/pr_workflow.rst:275
msgid "``git reset HEAD <files>`` will *unstage* changes to the listed files."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:276
#: ../../docs/contributing/workflow/pr_workflow.rst:276
msgid "``git status`` will show you what are the currently staged and unstaged modifications."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:278
#: ../../docs/contributing/workflow/pr_workflow.rst:278
msgid "``git commit`` will commit the staged files. It will open a text editor (you can define the one you want to use with the ``GIT_EDITOR`` environment variable or the ``core.editor`` setting in your Git configuration) to let you write a commit log. You can use ``git commit -m \"Cool commit log\"`` to write the log directly."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:283
#: ../../docs/contributing/workflow/pr_workflow.rst:283
msgid "``git commit --amend`` lets you amend the last commit with your currently staged changes (added with ``git add``). This is the best option if you want to fix a mistake in the last commit (bug, typo, style issue, etc.)."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:286
#: ../../docs/contributing/workflow/pr_workflow.rst:286
msgid "``git log`` will show you the last commits of your current branch. If you did local commits, they should be shown at the top."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:288
#: ../../docs/contributing/workflow/pr_workflow.rst:288
msgid "``git show`` will show you the changes of the last commit. You can also specify a commit hash to see the changes for that commit."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:291
#: ../../docs/contributing/workflow/pr_workflow.rst:291
msgid "That's a lot to memorize! Don't worry, just check this cheat sheet when you need to make changes, and learn by doing."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:294
#: ../../docs/contributing/workflow/pr_workflow.rst:294
msgid "Here's how the shell history could look like on our example:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:326
#: ../../docs/contributing/workflow/pr_workflow.rst:326
msgid "With this, we should have two new commits in our ``better-project-manager`` branch which were not in the ``master`` branch. They are still only local though, the remote fork does not know about them, nor does the upstream repo."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:331
#: ../../docs/contributing/workflow/pr_workflow.rst:331
msgid "Pushing changes to a remote"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:333
#: ../../docs/contributing/workflow/pr_workflow.rst:333
msgid "That's where ``git push`` will come into play. In Git, a commit is always done in the local repository (unlike Subversion where a commit will modify the remote repository directly). You need to *push* the new commits to a remote branch to share them with the world. The syntax for this is:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:342
#: ../../docs/contributing/workflow/pr_workflow.rst:342
msgid "The part about the remote branch can be omitted if you want it to have the same name as the local branch, which is our case in this example, so we will do:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:350
msgid "Git will ask you for your username and password, and the changes will be sent to your remote. If you check the fork's page on GitHub, you should see a new branch with your added commits."
#: ../../docs/contributing/workflow/pr_workflow.rst:350
msgid "Git will ask you for your username and password. For your password, enter your GitHub Personal Access Token (PAT). If you do not have a GitHub Personal Access Token, or do not have one with the correct permissions for your newly forked repository, you will need to create one. Follow this link to create your Personal Access Token: `Creating a personal access token <https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token>`_."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:355
#: ../../docs/contributing/workflow/pr_workflow.rst:357
msgid "After you have successfully verified your account using your PAT, the changes will be sent to your remote repository. If you check the fork's page on GitHub, you should see a new branch with your added commits."
msgstr ""
#: ../../docs/contributing/workflow/pr_workflow.rst:362
msgid "Issuing a pull request"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:357
#: ../../docs/contributing/workflow/pr_workflow.rst:364
msgid "When you load your fork's branch on GitHub, you should see a line saying *\"This branch is 2 commits ahead of godotengine:master.\"* (and potentially some commits behind, if your ``master`` branch was out of sync with the upstream ``master`` branch)."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:364
#: ../../docs/contributing/workflow/pr_workflow.rst:371
msgid "On that line, there is a \"Pull request\" link. Clicking it will open a form that will let you issue a pull request on the ``godotengine/godot`` upstream repository. It should show you your two commits, and state \"Able to merge\". If not (e.g. it has way more commits, or says there are merge conflicts), don't create the PR yet, something went wrong. Go to our `Godot Contributors Chat <https://chat.godotengine.org/>`_ and ask for support :)"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:371
#: ../../docs/contributing/workflow/pr_workflow.rst:378
msgid "Use an explicit title for the PR and put the necessary details in the comment area. You can drag and drop screenshots, GIFs or zipped projects if relevant, to showcase what your work implements. Click \"Create a pull request\", and tadaa!"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:377
#: ../../docs/contributing/workflow/pr_workflow.rst:384
msgid "Modifying a pull request"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:379
#: ../../docs/contributing/workflow/pr_workflow.rst:386
msgid "While it is reviewed by other contributors, you will often need to make changes to your yet-unmerged PR, either because contributors requested them, or because you found issues yourself while testing."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:383
#: ../../docs/contributing/workflow/pr_workflow.rst:390
msgid "The good news is that you can modify a pull request simply by acting on the branch you made the pull request from. You can e.g. make a new commit on that branch, push it to your fork, and the PR will be updated automatically:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:398
#: ../../docs/contributing/workflow/pr_workflow.rst:405
msgid "However, be aware that in our PR workflow, we favor commits that bring the codebase from one functional state to another functional state, without having intermediate commits fixing up bugs in your own code or style issues. Most of the time, we will prefer a single commit in a given PR (unless there's a good reason to keep the changes separate). Instead of authoring a new commit, consider using ``git commit --amend`` to amend the previous commit with your fixes. The above example would then become:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:428
#: ../../docs/contributing/workflow/pr_workflow.rst:435
msgid "The interactive rebase"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:430
#: ../../docs/contributing/workflow/pr_workflow.rst:437
msgid "If you didn't follow the above steps closely to *amend* changes into a commit instead of creating fixup commits, or if you authored your changes without being aware of our workflow and Git usage tips, reviewers might request of your to *rebase* your branch to *squash* some or all of the commits into one."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:435
#: ../../docs/contributing/workflow/pr_workflow.rst:442
msgid "Indeed, if some commits have been made following reviews to fix bugs, typos, etc. in the original commit, they are not relevant to a future changelog reader who would want to know what happened in the Godot codebase, or when and how a given file was last modified."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:440
#: ../../docs/contributing/workflow/pr_workflow.rst:447
msgid "To squash those extraneous commits into the main one, we will have to *rewrite history*. Right, we have that power. You may read that it's a bad practice, and it's true when it comes to branches of the upstream repo. But in your fork, you can do whatever you want, and everything is allowed to get neat PRs :)"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:445
#: ../../docs/contributing/workflow/pr_workflow.rst:452
msgid "We will use the *interactive rebase* ``git rebase -i`` to do this. This command takes a commit ID or a branch name as argument, and will let you modify all commits between that commit/branch and the last one in your working branch, the so-called ``HEAD``."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:450
#: ../../docs/contributing/workflow/pr_workflow.rst:457
msgid "While you can give any commit ID to ``git rebase -i`` and review everything in between, the most common and convenient workflow involves rebasing on the upstream ``master`` branch, which you can do with:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:458
#: ../../docs/contributing/workflow/pr_workflow.rst:465
msgid "Referencing branches in Git is a bit tricky due to the distinction between remote and local branches. Here, ``upstream/master`` (with a `/`) is a local branch which has been pulled from the ``upstream`` remote's ``master`` branch."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:463
#: ../../docs/contributing/workflow/pr_workflow.rst:470
msgid "Interactive rebases can only be done on local branches, so the `/` is important here. As the upstream remote changes frequently, your local ``upstream/master`` branch may become outdated, so you can update it with ``git fetch upstream master``. Contrarily to ``git pull --rebase upstream master`` which would update your currently checked out branch, ``fetch`` will only update the ``upstream/master`` reference (which is distinct from your local ``master`` branch... yes it's confusing, but you'll become familiar with this little by little)."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:473
#: ../../docs/contributing/workflow/pr_workflow.rst:480
msgid "This will open a text editor (``vi`` by default, see `Git docs <https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#_core_editor>`_ to configure your favorite one) with something which may look like this:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:482
#: ../../docs/contributing/workflow/pr_workflow.rst:489
msgid "The editor will also show instructions regarding how you can act on those commits. In particular, it should tell you that \"pick\" means to use that commit (do nothing), and that \"squash\" and \"fixup\" can be used to *meld* the commit in its parent commit. The difference between \"squash\" and \"fixup\" is that \"fixup\" will discard the commit log from the squashed commit. In our example, we are not interested in keeping the log of the \"Fix a typo\" commit, so we use:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:495
#: ../../docs/contributing/workflow/pr_workflow.rst:502
msgid "Upon saving and quitting the editor, the rebase will occur. The second commit will be melded into the first one, and ``git log`` and ``git show`` should now confirm that you have only one commit with the changes from both previous commits."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:500
#: ../../docs/contributing/workflow/pr_workflow.rst:507
msgid "But! You rewrote the history, and now your local and remote branches have diverged. Indeed, commit 1b4aad7 in the above example will have changed, and therefore got a new commit hash. If you try to push to your remote branch, it will raise an error:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:514
#: ../../docs/contributing/workflow/pr_workflow.rst:521
msgid "This is a sane behavior, Git will not let you push changes that would override remote content. But that's actually what we want to do here, so we will have to *force* it:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:522
#: ../../docs/contributing/workflow/pr_workflow.rst:529
msgid "And tadaa! Git will happily *replace* your remote branch with what you had locally (so make sure that's what you wanted, using ``git log``). This will also update the PR accordingly."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:527
#: ../../docs/contributing/workflow/pr_workflow.rst:534
msgid "Deleting a Git branch"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:529
#: ../../docs/contributing/workflow/pr_workflow.rst:536
msgid "After your pull request gets merged, there's one last thing you should do: delete your Git branch for the PR. There won't be issues if you don't delete your branch, but it's good practice to do so. You'll need to do this twice, once for the local branch and another for the remote branch on GitHub."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:534
msgid "To delete our better project manager branch locally, use this command:"
#: ../../docs/contributing/workflow/pr_workflow.rst:541
msgid "To delete our better Project Manager branch locally, use this command:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:540
#: ../../docs/contributing/workflow/pr_workflow.rst:547
msgid "Alternatively, if the branch hadn't been merged yet and we wanted to delete it anyway, instead of ``-d`` you would use ``-D``."
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:543
#: ../../docs/contributing/workflow/pr_workflow.rst:550
msgid "Next, to delete the remote branch on GitHub use this command:"
msgstr ""
#: ../../docs/community/contributing/pr_workflow.rst:549
#: ../../docs/contributing/workflow/pr_workflow.rst:556
msgid "You can also delete the remote branch from the GitHub PR itself, a button should appear once it has been merged or closed."
msgstr ""

View File

@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Project-Id-Version: Godot Engine latest\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"POT-Creation-Date: 2023-09-18 18:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,89 +16,92 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/community/contributing/testing_pull_requests.rst:4
#: ../../docs/contributing/workflow/testing_pull_requests.rst:4
msgid "Testing pull requests"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:6
#: ../../docs/contributing/workflow/testing_pull_requests.rst:6
msgid "Many people are developing new features or fixing bugs on GitHub. To help with engine development, you may be asked to test those pull requests with a Godot build that includes code from the pull request in question."
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:10
#: ../../docs/contributing/workflow/testing_pull_requests.rst:10
msgid "Thanks to GitHub Actions, all `pull requests <https://github.com/godotengine/godot/pulls>`__ have continuous builds available. These builds let you try out pull requests without having to compile anything from source."
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:15
#: ../../docs/contributing/workflow/testing_pull_requests.rst:15
msgid "Downloading a compiled build"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:17
#: ../../docs/contributing/workflow/testing_pull_requests.rst:17
msgid "You can download pull request builds from GitHub Actions. Since only signed in users may download builds directly from GitHub Actions, the procedure varies depending on whether you have a GitHub account or not."
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:23
#: ../../docs/contributing/workflow/testing_pull_requests.rst:23
msgid "Due to a GitHub Actions limitation, builds are only available for 90 days after the pull request was last updated. If you still wish to try a pull request locally, you can :ref:`compile the pull request branch from source <doc_testing_pull_requests_compile>` instead."
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:30
#: ../../docs/contributing/workflow/testing_pull_requests.rst:30
msgid "If you have a GitHub account"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:32
#: ../../docs/contributing/workflow/testing_pull_requests.rst:32
msgid "Open the pull request page. Click the **Checks** tab near the top of the page:"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:36
msgid "In the list of platforms that appears on the left, select your platform by clicking it then choose the type of build you need (editor or export template). If in doubt, select an editor build:"
#: ../../docs/contributing/workflow/testing_pull_requests.rst:36
msgid "Click the **Artifacts** dropdown on the right of the page:"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:42
msgid "Click the **Artifacts** dropdown on the right of the page then click the artifact's name to download it:"
#: ../../docs/contributing/workflow/testing_pull_requests.rst:40
msgid "In the dropdown, click the artifact's name to download it. Remember to scroll if you cannot see the name of the platform you're looking for:"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:47
#: ../../docs/community/contributing/testing_pull_requests.rst:79
msgid "Extract the ZIP archive then run the executable. Note that Windows and macOS binaries are not code signed. This means you may have to bypass a security warning before you can run the executable. If you frequently test pull request builds, it may be better to disable Windows SmartScreen or `disable macOS Gatekeeper <https://disable-gatekeeper.github.io/>`__ permanently."
#: ../../docs/contributing/workflow/testing_pull_requests.rst:45
msgid "Extract the ZIP archive then run the executable. Note that Windows and macOS binaries are **not** code signed. This means you may have to bypass a security warning before you can run the executable. On Windows, if you frequently test pull request builds, it may be better to disable Windows SmartScreen permanently in the Windows security settings. On macOS, see :ref:`doc_running_on_macos` for instructions on bypassing Gatekeeper."
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:54
#: ../../docs/contributing/workflow/testing_pull_requests.rst:53
msgid "If you don't have a GitHub account"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:56
#: ../../docs/contributing/workflow/testing_pull_requests.rst:55
msgid "If you don't have a GitHub account and can't sign up for one, you can use the third-party `nightly.link <https://nightly.link>`__ service to generate a universal download link."
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:60
#: ../../docs/community/contributing/testing_pull_requests.rst:94
#: ../../docs/contributing/workflow/testing_pull_requests.rst:59
#: ../../docs/contributing/workflow/testing_pull_requests.rst:93
msgid "Open the pull request page. Click the *fork*'s branch name near the top of the page:"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:64
#: ../../docs/contributing/workflow/testing_pull_requests.rst:63
msgid "Now that you are on the fork's branch page, click the ``.github`` folder at the top of the file list. Then, click on the ``workflows`` folder (whicb is inside the ``.github`` folder). Click the workflow file for the platform you wish to download artifacts for. *After* clicking on the file (which opens the file view), copy the page URL from your browser's address bar."
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:69
msgid "Open the `nightly.link <https://nightly.link>`__ website and paste the URL you just copied into the text field located below the heading **Paste a GitHub link, get a nightly.link!**. After pasting the URL, click **Get links** on the right. If the the format of the URL you pasted is correct, you should be presented with a page like this:"
#: ../../docs/contributing/workflow/testing_pull_requests.rst:68
msgid "Open the `nightly.link <https://nightly.link>`__ website and paste the URL you just copied into the text field located below the heading **Paste a GitHub link, get a nightly.link!**. After pasting the URL, click **Get links** on the right. If the format of the URL you pasted is correct, you should be presented with a page like this:"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:77
#: ../../docs/contributing/workflow/testing_pull_requests.rst:76
msgid "Click the URL of the artifact you wish to download."
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:88
#: ../../docs/contributing/workflow/testing_pull_requests.rst:78
msgid "Extract the ZIP archive then run the executable. Note that Windows and macOS binaries are not code signed. This means you may have to bypass a security warning before you can run the executable. If you frequently test pull request builds, it may be better to disable Windows SmartScreen or `disable macOS Gatekeeper <https://disable-gatekeeper.github.io/>`__ permanently."
msgstr ""
#: ../../docs/contributing/workflow/testing_pull_requests.rst:87
msgid "Compiling a pull request branch from source"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:90
#: ../../docs/contributing/workflow/testing_pull_requests.rst:89
msgid "This approach may be needed for pull requests that were last updated more than 90 days ago, or to test on platforms and configurations that are not supported by Godot's GitHub Actions setup."
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:98
#: ../../docs/contributing/workflow/testing_pull_requests.rst:97
msgid "Now that you are on the fork's branch page, click the green **Code** button on the right of the page then choose **Download ZIP** in the dropdown:"
msgstr ""
#: ../../docs/community/contributing/testing_pull_requests.rst:103
#: ../../docs/contributing/workflow/testing_pull_requests.rst:102
msgid "Extract the ZIP archive and follow the :ref:`compiling <toc-devel-compiling>` instructions for your operating system."
msgstr ""

View File

@@ -1,97 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/compiling_for_ios.rst:4
msgid "Compiling for iOS"
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:10
msgid "This page describes how to compile iOS export template binaries from source. If you're looking to export your project to iOS instead, read :ref:`doc_exporting_for_ios`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:16
msgid "SCons 3.0+ (you can install it via `Homebrew <https://brew.sh/>`_ or `MacPorts <https://www.macports.org/>`_, you should be able to run ``scons`` in a terminal when installed)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:19
msgid "Xcode 10.0 (or later) with the iOS (10.0) SDK and the command line tools."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:21
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:24
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:28
msgid "Compiling"
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:30
msgid "Open a Terminal, go to the root dir of the engine source code and type:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:36
msgid "for a debug build, or:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:42
msgid "for a release build (check ``platform/iphone/detect.py`` for the compiler flags used for each configuration)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:45
msgid "Alternatively, you can run"
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:51
msgid "for a Simulator executable."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:53
msgid "For recent devices, Apple requires 64-bit versions of application binaries when you are uploading to the Apple Store. The best way to provide these is to create a bundle in which there are both 32-bit and 64-bit binaries, so every device will be able to run the game."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:56
msgid "It can be done in three steps: first compile the 32-bit version, then compile the 64-bit version and then use ``lipo`` to bundle them into one \"universal\" binary. All those steps can be performed with following commands:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:67
msgid "If you also want to provide a simulator build (reduces the chance of any linker errors with dependencies), you'll need to build and lipo the ``x86_64`` architecture as well."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:79
msgid "Run"
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:81
msgid "To run on a device or simulator, follow these instructions: :ref:`doc_exporting_for_ios`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_ios.rst:84
msgid "Replace or add your executable to the Xcode project, and change the \"executable name\" property on Info.plist accordingly if you use an alternative build."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,185 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/compiling_for_osx.rst:4
msgid "Compiling for macOS"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:10
msgid "This page describes how to compile macOS editor and export template binaries from source. If you're looking to export your project to macOS instead, read :ref:`doc_exporting_for_macos`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:16
msgid "For compiling under macOS, the following is required:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:18
msgid "`Python 3.5+ <https://www.python.org>`_."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:19
msgid "`SCons 3.0+ <https://www.scons.org>`_ build system."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:20
msgid "`Xcode <https://apps.apple.com/us/app/xcode/id497799835>`_ (or the more lightweight Command Line Tools for Xcode)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:22
msgid "*Optional* - `yasm <https://yasm.tortall.net/>`_ (for WebM SIMD optimizations)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:24
msgid "If you have `Homebrew <https://brew.sh/>`_ installed, you can easily install SCons and yasm using the following command::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:29
msgid "Installing Homebrew will also fetch the Command Line Tools for Xcode automatically if you don't have them already."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:32
msgid "Similarly, if you have `MacPorts <https://www.macports.org/>`_ installed, you can easily install SCons and yasm using the following command::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:38
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:41
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:45
msgid "Compiling"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:47
msgid "Start a terminal, go to the root directory of the engine source code."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:49
msgid "To compile for Intel (x86-64) powered Macs, use::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:53
msgid "To compile for Apple Silicon (ARM64) powered Macs, use::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:57
msgid "To support both architectures in a single \"Universal 2\" binary, run the above two commands and then use ``lipo`` to bundle them together::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:61
msgid "If all goes well, the resulting binary executable will be placed in the ``bin/`` subdirectory. This executable file contains the whole engine and runs without any dependencies. Executing it will bring up the project manager."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:66
msgid "If you want to use separate editor settings for your own Godot builds and official releases, you can enable :ref:`doc_data_paths_self_contained_mode` by creating a file called ``._sc_`` or ``_sc_`` in the ``bin/`` folder."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:71
msgid "To create an ``.app`` bundle like in the official builds, you need to use the template located in ``misc/dist/osx_tools.app``. Typically, for an optimized editor binary built with ``target=release_debug``::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:81
msgid "Compiling a headless/server build"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:83
msgid "To compile a *headless* build which provides editor functionality to export projects in an automated manner, use::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:88
msgid "To compile a debug *server* build which can be used with :ref:`remote debugging tools <doc_command_line_tutorial>`, use::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:93
msgid "To compile a release *server* build which is optimized to run dedicated game servers, use::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:99
msgid "Building export templates"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:101
msgid "To build macOS export templates, you have to compile with ``tools=no`` (no editor) and respectively for ``target=release`` (release template) and ``target=release_debug``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:105
msgid "Official templates are universal binaries which support both Intel x86_64 and ARM64 architectures. You can also create export templates that support only one of those two architectures by leaving out the ``lipo`` step below."
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:109
msgid "For Intel x86_64::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:114
msgid "For ARM64 (Apple M1)::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:119
msgid "To support both architectures in a single \"Universal 2\" binary, run the above two commands blocks and then use ``lipo`` to bundle them together::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:125
msgid "To create an ``.app`` bundle like in the official builds, you need to use the template located in ``misc/dist/osx_template.app``. The release and debug builds should be placed in ``osx_template.app/Contents/MacOS`` with the names ``godot_osx_release.64`` and ``godot_osx_debug.64`` respectively. You can do so with the following commands (assuming a universal build, otherwise replace the ``.universal`` extension with the one of your arch-specific binaries)::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:138
msgid "You can then zip the ``osx_template.app`` folder to reproduce the ``osx.zip`` template from the official Godot distribution::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:144
msgid "Cross-compiling for macOS from Linux"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:146
msgid "It is possible to compile for macOS in a Linux environment (and maybe also in Windows using the Windows Subsystem for Linux). For that, you'll need to install `OSXCross <https://github.com/tpoechtrager/osxcross>`__ to be able to use macOS as a target. First, follow the instructions to install it:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:151
msgid "Clone the `OSXCross repository <https://github.com/tpoechtrager/osxcross>`__ somewhere on your machine (or download a ZIP file and extract it somewhere), e.g.::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:157
msgid "Follow the instructions to package the SDK: https://github.com/tpoechtrager/osxcross#packaging-the-sdk"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:159
msgid "Follow the instructions to install OSXCross: https://github.com/tpoechtrager/osxcross#installation"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:162
msgid "After that, you will need to define the ``OSXCROSS_ROOT`` as the path to the OSXCross installation (the same place where you cloned the repository/extracted the zip), e.g.::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:168
msgid "Now you can compile with SCons like you normally would::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_osx.rst:172
msgid "If you have an OSXCross SDK version different from the one expected by the SCons buildsystem, you can specify a custom one with the ``osxcross_sdk`` argument::"
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,165 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/compiling_for_uwp.rst:4
msgid "Compiling for Universal Windows Platform"
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:10
msgid "This page describes how to compile UWP export template binaries from source. If you're looking to export your project to UWP instead, read :ref:`doc_exporting_for_uwp`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:16
msgid "SCons 3.0+ (see :ref:`doc_compiling_for_windows` for more details)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:17
msgid "Visual Studio 2017 or later. See :ref:`doc_compiling_for_windows` about the caveats of installing it and the various prompts."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:19
msgid "Windows 10 SDK (can be selected in Visual Studio installation)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:20
msgid "`ANGLE source <https://github.com/Microsoft/angle>`__. Use the ``ms_master`` (default) branch. Keep it in a path without spaces to avoid problems."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:24
msgid "The ANGLE repo by Microsoft has been discontinued and the ``ms_master`` branch has been cleared out."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:27
msgid "As a temporary workaround however, it is still possible to download an older state of the source code via commit `c61d048 <https://github.com/microsoft/angle/tree/c61d0488abd9663e0d4d2450db7345baa2c0dfb6>`__."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:31
msgid "This page will eventually be updated in the future to reflect the new build instructions."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:34
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:37
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:41
msgid "Compiling"
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:43
msgid "You need to open a proper Visual Studio prompt for the target architecture you want to build. Check :ref:`doc_compiling_for_windows` to see how these prompts work."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:47
msgid "There are three target architectures for UWP: x86 (32-bits), x64 (64-bits) and ARM (32-bits). For the latter, you can run ``vcvarsall.bat`` with ``x86_arm`` or ``amd64_arm`` as argument to set the environment."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:51
msgid "Set the ``ANGLE_SRC_PATH`` to the directory where you downloaded the ANGLE source code. The build process will also build ANGLE to produce the required DLLs for the selected architecture."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:55
msgid "Once you're set, run the SCons command similarly to the other platforms::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:60
msgid "Creating UWP export templates"
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:62
msgid "To export using the editor you need to properly build package the templates. You need all three architectures with ``debug`` and ``release`` templates to be able to export."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:66
msgid "Open the command prompt for one architecture and run SCons twice (once for each target)::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:72
msgid "Repeat for the other architectures."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:74
msgid "In the end your ``bin`` folder will have the ``.exe`` binaries with a name like ``godot.uwp.opt.debug.32.x86.exe`` (with variations for each target/arch)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:78
msgid "Copy one of these to ``misc/dist/uwp_template`` inside the Godot source folder and rename the binary to ``godot.uwp.exe``. From the ANGLE source, under ``winrt/10/src/Release_%arch%`` (where ``%arch%`` can be ``Win32``, ``x64`` or ``ARM``), get the ``libEGL.dll`` and the ``libGLESv2.dll``, putting them along with the executable."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:84
msgid "Add the files in the ``uwp_template`` folder to a ZIP. Rename the resulting Zip according to the target/architecture of the template::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:94
msgid "Move those templates to the ``[versionstring]\\templates`` folder in Godot settings path, where `versionstring` is the version of Godot you have compiled the export templates for - e.g. `3.0.alpha` for the alpha version of Godot 3. If you don't want to replace the templates, you can set the \"Custom Package\" property in the export window."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:101
msgid "Running UWP apps with Visual Studio"
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:103
msgid "If you want to debug the UWP port or simply run your apps without packaging and signing, you can deploy and launch them using Visual Studio. It might be the easiest way if you are testing on a device such as a Windows Phone or an Xbox One."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:108
msgid "Within the ANGLE source folder, open ``templates`` and double-click the ``install.bat`` script file. This will install the Visual Studio project templates for ANGLE apps."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:112
msgid "If you have not built Godot yet, open the ``winrt/10/src/angle.sln`` solution from the ANGLE source and build it to Release/Win32 target. You may also need to build it for ARM if you plan to run on a device. You can also use MSBuild if you're comfortable with the command line."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:117
msgid "Create a new Windows App project using the \"App for OpenGL ES (Windows Universal)\" project template, which can be found under the ``Visual C++/Windows/Universal`` category."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:121
msgid "This is a base project with the ANGLE dependencies already set up. However, by default it picks the debug version of the DLLs which usually have poor performance. So in the \"Binaries\" filter, click in each of the DLLs there and in the \"Properties\" window and change the relative path from ``Debug_Win32`` to ``Release_Win32`` (or ``Release_ARM`` for devices)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:127
msgid "In the same \"Binaries\" filter, select \"Add > Existing Item\" and point to the Godot executable for UWP you have. In the \"Properties\" window, set \"Content\" to ``True`` so it's included in the project."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:131
msgid "Right-click the ``Package.appxmanifest`` file and select \"Open With... > XML (Text) Editor\". In the ``Package/Applications/Application`` element, replace the ``Executable`` attribute from ``$targetnametoken$.exe`` to ``godot.uwp.exe`` (or whatever your Godot executable is called). Also change the ``EntryPoint`` attribute to ``GodotUWP.App``. This will ensure that the Godot executable is correctly called when the app starts."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:138
msgid "Create a folder (*not* a filter) called ``game`` in your Visual Studio project folder and there you can put either a ``data.pck`` file or your Godot project files. After that, make sure to include it all with the \"Add > Existing Item\" command and set their \"Content\" property to ``True`` so they're copied to the app."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:144
msgid "To ease the workflow, you can open the \"Solution Properties\" and in the \"Configuration\" section untick the \"Build\" option for the app. You still have to build it at least once to generate some needed files, you can do so by right-clicking the project (*not* the solution) in the \"Solution Explorer\" and selecting \"Build\"."
msgstr ""
#: ../../docs/development/compiling/compiling_for_uwp.rst:150
msgid "Now you can just run the project and your app should open. You can also use the \"Start Without Debugging\" option from the \"Debug\" menu (or press :kbd:`Ctrl + F5`) to make it launch faster."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,125 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/compiling_for_web.rst:4
msgid "Compiling for the Web"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:8
msgid "This page describes how to compile HTML5 editor and export template binaries from source. If you're looking to export your project to HTML5 instead, read :ref:`doc_exporting_for_web`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:16
msgid "To compile export templates for the Web, the following is required:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:18
msgid "`Emscripten 1.39.9+ <https://emscripten.org>`__."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:19
msgid "`Python 3.5+ <https://www.python.org/>`__."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:20
msgid "`SCons 3.0+ <https://www.scons.org>`__ build system."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:22
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:25
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:29
msgid "Building export templates"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:31
msgid "Before starting, confirm that ``emcc`` is available in your PATH. This is usually configured by the Emscripten SDK, e.g. when invoking ``emsdk activate`` and ``source ./emsdk_env.sh``/``emsdk_env.bat``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:35
msgid "Open a terminal and navigate to the root directory of the engine source code. Then instruct SCons to build the JavaScript platform. Specify ``target`` as either ``release`` for a release build or ``release_debug`` for a debug build::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:42
msgid "By default, the :ref:`JavaScript singleton <doc_javascript_eval>` will be built into the engine. Official export templates also have the JavaScript singleton enabled. Since ``eval()`` calls can be a security concern, the ``javascript_eval`` option can be used to build without the singleton::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:50
msgid "The engine will now be compiled to WebAssembly by Emscripten. Once finished, the resulting file will be placed in the ``bin`` subdirectory. Its name is ``godot.javascript.opt.zip`` for release or ``godot.javascript.opt.debug.zip`` for debug."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:55
msgid "Finally, rename the zip archive to ``webassembly_release.zip`` for the release template::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:60
msgid "And ``webassembly_debug.zip`` for the debug template::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:65
msgid "Threads and GDNative"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:67
msgid "The default export templates do not include threads and GDNative support for performance and compatibility reasons. See the :ref:`export page <doc_javascript_export_options>` for more info."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:71
msgid "You can build the export templates using the option ``threads_enabled=yes`` or ``gdnative_enabled=yes`` to enable threads or GDNative support::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:80
msgid "Once finished, the resulting file will be placed in the ``bin`` subdirectory. Its name will have either the ``.threads`` or ``.gdnative`` suffix."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:83
msgid "Finally, rename the zip archives to ``webassembly_release_threads.zip`` and ``webassembly_release_gdnative.zip`` for the release template::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:89
msgid "And ``webassembly_debug_threads.zip`` and ``webassembly_debug_gdnative.zip`` for the debug template::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:96
msgid "Building the Editor"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:98
msgid "It is also possible to build a version of the Godot editor that can run in the browser. The editor version requires threads support and is not recommended over the native build. You can build the editor with::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:104
msgid "Once finished, the resulting file will be placed in the ``bin`` subdirectory. Its name will be ``godot.javascript.opt.tools.threads.zip``. You can upload the zip content to your web server and visit it with your browser to use the editor."
msgstr ""
#: ../../docs/development/compiling/compiling_for_web.rst:108
msgid "Refer to the :ref:`export page <doc_javascript_export_options>` for the web server requirements."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,285 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/compiling_for_x11.rst:4
msgid "Compiling for X11 (Linux, \\*BSD)"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:10
msgid "This page describes how to compile Linux editor and export template binaries from source. If you're looking to export your project to Linux instead, read :ref:`doc_exporting_for_linux`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:14
msgid "Requirements"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:16
msgid "For compiling under Linux or other Unix variants, the following is required:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:19
msgid "GCC 7+ or Clang 6+."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:20
msgid "Python 3.5+."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:21
msgid "SCons 3.0+ build system. If your distribution uses Python 2 by default, or you are using a version of SCons prior to 3.1.2, you will need to change the version of Python that SCons uses by changing the shebang (the first line) of the SCons script file to ``#! /usr/bin/python3``. Use the command ``which scons`` to find the location of the SCons script file."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:26
msgid "pkg-config (used to detect the dependencies below)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:27
msgid "X11, Xcursor, Xinerama, Xi and XRandR development libraries."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:28
msgid "MesaGL development libraries."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:29
msgid "ALSA development libraries."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:30
msgid "PulseAudio development libraries."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:31
msgid "*Optional* - libudev (build with ``udev=yes``)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:32
msgid "*Optional* - yasm (for WebM SIMD optimizations)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:34
msgid "To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:37
msgid "For a general overview of SCons usage for Godot, see :ref:`doc_introduction_to_the_buildsystem`."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:41
msgid "Distro-specific one-liners"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:43
msgid "**Alpine Linux**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:48
msgid "**Arch Linux**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:53
msgid "**Debian** / **Ubuntu**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:58
msgid "**Fedora**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:64
msgid "**FreeBSD**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:70
msgid "**Gentoo**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:75
msgid "**Mageia**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:81
msgid "**OpenBSD**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:85
msgid "**openSUSE**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:90
msgid "**NetBSD**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:94
msgid "For audio support, you can optionally install ``pulseaudio``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:96
msgid "**Solus**"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:103
msgid "Compiling"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:105
msgid "Start a terminal, go to the root dir of the engine source code and type:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:111
msgid "If all goes well, the resulting binary executable will be placed in the \"bin\" subdirectory. This executable file contains the whole engine and runs without any dependencies. Executing it will bring up the project manager."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:118
msgid "If you wish to compile using Clang rather than GCC, use this command:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:124
msgid "Using Clang appears to be a requirement for OpenBSD, otherwise fonts would not build."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:127
msgid "If you are compiling Godot for production use, then you can make the final executable smaller and faster by adding the SCons option ``target=release_debug``."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:131
msgid "If you are compiling Godot with GCC, you can make the binary even smaller and faster by adding the SCons option ``lto=full``. As link-time optimization is a memory-intensive process, this will require about 7 GB of available RAM while compiling."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:136
msgid "If you want to use separate editor settings for your own Godot builds and official releases, you can enable :ref:`doc_data_paths_self_contained_mode` by creating a file called ``._sc_`` or ``_sc_`` in the ``bin/`` folder."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:142
msgid "Compiling a headless/server build"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:144
msgid "To compile a *headless* build which provides editor functionality to export projects in an automated manner, use::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:149
msgid "To compile a debug *server* build which can be used with :ref:`remote debugging tools <doc_command_line_tutorial>`, use::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:154
msgid "To compile a *server* build which is optimized to run dedicated game servers, use::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:160
msgid "Building export templates"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:162
msgid "Linux binaries usually won't run on distributions that are older than the distribution they were built on. If you wish to distribute binaries that work on most distributions, you should build them on an old distribution such as Ubuntu 16.04. You can use a virtual machine or a container to set up a suitable build environment."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:170
msgid "To build X11 (Linux, \\*BSD) export templates, run the build system with the following parameters:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:173
msgid "(32 bits)"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:180
msgid "(64 bits)"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:187
msgid "Note that cross-compiling for the opposite bits (64/32) as your host platform is not always straight-forward and might need a chroot environment."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:190
msgid "To create standard export templates, the resulting files must be copied to:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:196
msgid "and named like this (even for \\*BSD which is seen as \"Linux X11\" by Godot):"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:205
msgid "However, if you are writing your custom modules or custom C++ code, you might instead want to configure your binaries as custom export templates here:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:211
msgid "You don't even need to copy them, you can just reference the resulting files in the ``bin/`` directory of your Godot source folder, so the next time you build, you automatically have the custom templates referenced."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:216
msgid "Using Clang and LLD for faster development"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:218
msgid "You can also use Clang and LLD to build Godot. This has two upsides compared to the default GCC + GNU ld setup:"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:221
msgid "LLD links Godot significantly faster compared to GNU ld or gold. This leads to faster iteration times."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:223
msgid "Clang tends to give more useful error messages compared to GCC."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:225
msgid "To do so, install Clang and the ``lld`` package from your distribution's package manager then use the following SCons command::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:230
msgid "After the build is completed, a new binary with a ``.llvm`` suffix will be created in the ``bin/`` folder."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:233
msgid "It's still recommended to use GCC for production builds as they can be compiled using link-time optimization, making the resulting binaries smaller and faster."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:237
msgid "Using Pyston for faster development"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:239
msgid "You can use `Pyston <https://www.pyston.org/>`__ to run SCons. Pyston is a JIT-enabled implementation of the Python language (which SCons is written in). It is currently only compatible with Linux. Pyston can speed up incremental builds significantly, often by a factor between 1.5× and 2×. Pyston can be combined with Clang and LLD to get even faster builds."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:245
msgid "Download the `latest portable Pyston release <https://github.com/pyston/pyston/releases/latest>`__."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:246
msgid "Extract the portable ``.tar.gz`` to a set location, such as ``$HOME/.local/opt/pyston/`` (create folders as needed)."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:247
msgid "Use ``cd`` to reach the extracted Pyston folder from a terminal, then run ``./pyston -m pip install scons`` to install SCons within Pyston."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:249
msgid "To make SCons via Pyston easier to run, create a symbolic link of its wrapper script to a location in your ``PATH`` environment variable::"
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:254
msgid "Instead of running ``scons <build arguments>``, run ``pyston-scons <build arguments>`` to compile Godot."
msgstr ""
#: ../../docs/development/compiling/compiling_for_x11.rst:257
msgid "If you can't run ``pyston-scons`` after creating the symbolic link, make sure ``$HOME/.local/bin/`` is part of your user's ``PATH`` environment variable."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,447 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/compiling_with_mono.rst:4
msgid "Compiling with Mono"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:9
msgid "Requirements"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:11
msgid "Mono 6.12.0 or greater"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:12
msgid "MSBuild"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:13
msgid "NuGet"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:14
msgid "**On Linux/macOS only:** pkg-config"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:16
msgid "You may need to import necessary certificates for NuGet to perform HTTPS requests."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:19
msgid "The recommended method is to use **curl**'s CA (Certificate Authorities) certificate bundle."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:21
msgid "Run the following commands to download and import it. On Windows, you can run it from the Mono command line prompt (or the regular prompt if you added Mono's ``bin`` directory to your ``PATH`` environment variable)::"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:29
msgid "Alternatively, you can use the following command, though it's deprecated and may not work correctly::"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:34
msgid "Environment variables"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:36
msgid "By default, SCons will try to find Mono in the Windows Registry on Windows or via ``pkg-config`` on other platforms. You can specify a different installation directory by passing the ``mono_prefix`` command-line option to SCons; e.g. ``scons [...] mono_prefix=%ProgramFiles%/Mono``."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:41
msgid "This is the directory that contains the subdirectories ``include`` and ``lib``."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:44
msgid "Enable the Mono module"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:46
msgid "By default, the Mono module is disabled when building. To enable it, add the option ``module_mono_enabled=yes`` to the SCons command line."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:50
msgid "Generate the glue"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:52
msgid "Glue sources are the wrapper functions that will be called by managed methods. These source files must be generated before building your final binaries. In order to generate them, first, you must build a temporary Godot binary with the options ``tools=yes`` and ``mono_glue=no``::"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:59
msgid "After the build finishes, you need to run the compiled executable with the parameter ``--generate-mono-glue`` followed by the path to an output directory. This path must be ``modules/mono/glue`` in the Godot directory::"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:65
msgid "This command will tell Godot to generate the file ``modules/mono/glue/mono_glue.gen.cpp``, the C# solution for the Godot API at ``modules/mono/glue/GodotSharp/GodotSharp/Generated``, and the C# solution for the editor tools at ``modules/mono/glue/GodotSharp/GodotSharpEditor/Generated``. Once these files are generated, you can build Godot for all the desired targets without having to repeat this process."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:71
msgid "``<godot_binary>`` refers to the tools binary you compiled above with the Mono module enabled. Its exact name will differ based on your system and configuration, but should be of the form ``bin/godot.<platform>.tools.<bits>.mono``, e.g. ``bin/godot.x11.tools.64.mono`` or ``bin/godot.windows.tools.64.mono.exe``. Be especially aware of the **.mono** suffix! If you've previously compiled Godot without Mono support, you might have similarly named binaries without this suffix. These binaries can't be used to generate the Mono glue."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:81
msgid "Notes"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:83
msgid "**Do not build your final binaries with** ``mono_glue=no``. This disables C# scripting. This option must be used only for the temporary binary that will generate the glue. Godot will print a warning at startup if it was built without the glue sources."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:87
msgid "The glue sources must be regenerated every time the ClassDB-registered API changes. That is, for example, when a new method is registered to the scripting API or one of the parameters of such a method changes. Godot will print an error at startup if there is an API mismatch between ClassDB and the glue sources."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:95
msgid "Rebuild with Mono glue"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:97
msgid "Once you have generated the Mono glue, you can build the final binary with ``mono_glue=yes``. This is the default value for ``mono_glue``, so you can also omit it. To build a Mono-enabled editor::"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:103
msgid "And Mono-enabled export templates::"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:107
msgid "If everything went well, apart from the normal output, SCons should have created the following files in the ``bin`` directory:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:110
msgid "If you're not linking the Mono runtime statically, the build script will place the Mono runtime shared library (``monosgen-2.0``) next to the Godot binary in the output directory. Make sure to include this library when distributing Godot. When targeting Android, no extra steps are required as this library is automatically copied to ``#platform/android/java/libs`` and Gradle takes care of the rest."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:116
msgid "Unlike \"classical\" Godot builds, when building with the Mono module enabled (and depending on the target platform), a data directory may be created both for the editor and for export templates. This directory is important for proper functioning and must be distributed together with Godot. More details about this directory in :ref:`Data directory<compiling_with_mono_data_directory>`."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:124
msgid "Examples"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:127
msgid "Example (Windows)"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:144
msgid "Example (X11)"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:163
msgid "Data directory"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:165
msgid "The data directory is a dependency for Godot binaries built with the Mono module enabled. It contains important files for the correct functioning of Godot. It must be distributed together with the Godot executable."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:169
msgid "The information below doesn't apply for Android, iOS and WASM, as there is no data directory for these platforms."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:173
msgid "Export templates"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:175
msgid "The name of the data directory for an export template differs based on the configuration it was built with. The format is ``data.mono.<platform>.<bits>.<target>``, e.g. ``data.mono.x11.32.release_debug`` or ``data.mono.windows.64.release``."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:180
msgid "This directory must be placed with its original name next to the Godot export templates. When exporting a project, Godot will also copy this directory with the game executable but the name will be changed to ``data_<APPNAME>``, where ``<APPNAME>`` is the application name as specified in the project setting ``application/config/name``."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:186
msgid "In the case of macOS, where the export template is compressed as a ZIP archive, the contents of the data directory can be placed in the following locations inside the ZIP archive:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:191
#: ../../docs/development/compiling/compiling_with_mono.rst:213
msgid "``bin/data.mono.<platform>.<bits>.<target>/Mono/lib``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:191
msgid "``/osx_template.app/Contents/Frameworks/GodotSharp/Mono/lib``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:193
#: ../../docs/development/compiling/compiling_with_mono.rst:215
msgid "``bin/data.mono.<platform>.<bits>.<target>/Mono/etc``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:193
msgid "``/osx_template.app/Contents/Resources/GodotSharp/Mono/etc``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:197
msgid "Editor"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:199
msgid "The name of the data directory for the Godot editor will always be ``GodotSharp``. The contents of this directory are the following:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:202
msgid "``Api``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:203
msgid "``Mono`` (optional)"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:204
msgid "``Tools``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:206
msgid "The ``Api`` subdirectory contains the Godot API assemblies. On macOS, if the Godot editor is distributed as a bundle, the contents of the data directory may be placed in the following locations:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:211
msgid "``bin/data.mono.<platform>.<bits>.<target>/Api``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:211
msgid "``<bundle_name>.app/Contents/Frameworks/GodotSharp/Api``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:213
msgid "``<bundle_name>.app/Contents/Frameworks/GodotSharp/Mono/lib``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:215
msgid "``<bundle_name>.app/Contents/Resources/GodotSharp/Mono/etc``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:217
msgid "``bin/data.mono.<platform>.<bits>.<target>/Tools``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:217
msgid "``<bundle_name>.app/Contents/Frameworks/GodotSharp/Tools``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:220
msgid "The ``Mono`` subdirectory is optional. It will be needed when distributing the editor, as issues can arise when the user-installed Mono version isn't identical to the one the Godot editor was built with. Pass ``copy_mono_root=yes`` to SCons when building the editor in order to create this folder and its contents."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:225
msgid "The ``Tools`` subdirectory contains tools required by the editor, like the ``GodotTools`` assemblies and its dependencies."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:229
msgid "Building the Mono runtime"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:231
msgid "When building Godot for the desktop, you will likely use the pre-built Mono runtime that is installed on your system. This likely won't be the case when targeting other platforms like Android, iOS and WebAssembly. You will have to build the Mono runtime yourself for those platforms."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:236
msgid "We recommend using these `build scripts <https://github.com/godotengine/godot-mono-builds>`_. They simplify this process but also include some patches needed for proper functioning with Godot. See the README on the link above for instructions on how to use the scripts."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:242
msgid "Targeting Android"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:244
msgid "Compiling the Android export templates with Mono is a bit simpler than it is for the desktop platforms, as there are no additional steps required after building. There is no need to worry about run-time dependencies like a data directory or the shared library (when dynamically linking) as those are automatically added to the Gradle project."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:250
msgid "Once you've built Mono, you can proceed to build Godot with the instructions described in this page and the :ref:`Compiling for Android<doc_compiling_for_android>` page. Make sure to let SCons know about the location of the Mono runtime you've just built, e.g.: ``scons [...] mono_prefix=\"$HOME/mono-installs/android-armeabi-v7a-release\"`` (This path may be different on your system)."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:258
msgid "Targeting iOS"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:260
msgid "Once you've built Mono, you can proceed to build Godot with the instructions described in this page and the :ref:`Compiling for iOS<doc_compiling_for_ios>` page. Make sure to let SCons know about the location of the Mono runtime you've just built, e.g.: ``scons [...] mono_prefix=\"$HOME/mono-installs/ios-arm64-release\"`` (This path may be different on your system)."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:267
msgid "After building Godot for each architecture, you will notice SCons has copied the Mono libraries for each of them to the output directory:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:280
msgid "The last three are only for iOS devices and are not available for the iOS simulator."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:282
msgid "These libraries must be put in universal (multi-architecture) \"fat\" files to be distributed with the export templates."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:285
msgid "The following bash script will create the \"fat\" libraries in the directory ``#bin/ios/iphone-mono-libs``:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:301
msgid "The ``iphone-mono-libs`` folder must be distributed with the export templates. The Godot editor will look for the libraries in ``<templates>/iphone-mono-libs/lib<name>.iphone.fat.a``."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:305
msgid "Targeting WebAssembly"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:307
msgid "Building for WebAssembly currently involves the same process regardless of whether the Mono module is enabled."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:309
msgid "Once you've built Mono, you can proceed to build Godot with the instructions described in this page and the :ref:`Compiling for the Web<doc_compiling_for_web>` page. Make sure to let SCons know about the location of the Mono runtime you've just built, e.g.: ``scons [...] mono_prefix=\"$HOME/mono-installs/wasm-runtime-release\"`` (This path may be different on your system)."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:317
msgid "Base Class Library"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:319
msgid "The export templates must also include the BCL (Base Class Library) for each target platform. Godot looks for the BCL folder at ``<templates>/bcl/<target_platform>``, where ``<target_platform>`` is the same name passed to the SCons ``platform`` option, e.g.: ``<templates>/bcl/windows``, ``<templates>/bcl/javascript``."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:324
msgid "Alternatively, Godot will look for them in the following locations:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:327
msgid "Android"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:327
msgid "``<templates>/bcl/monodroid``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:329
msgid "iOS"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:329
msgid "``<templates>/bcl/monotouch``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:331
msgid "WebAssembly"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:331
msgid "``<templates>/bcl/wasm``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:333
msgid "Linux and macOS"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:333
msgid "``<templates>/bcl/net_4_x``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:335
msgid "Windows"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:335
msgid "``<templates>/bcl/net_4_x_win``"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:338
msgid "As of now, we're assuming the same BCL profile can be used for both Linux and macOS, but this may change in the future as they're not guaranteed to be the same (as is the case with the Windows BCL)."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:342
msgid "If the target platform is the same as the platform of the Godot editor, then the editor will use the BCL it's running on (``<data_folder>/Mono/lib/mono/4.5``) if it cannot find the BCL in the export templates."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:347
msgid "AOT cross-compilers"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:349
msgid "To perform ahead-of-time (AOT) compilation for other platforms, Godot needs to have access to the Mono cross-compilers for that platform and architecture."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:352
msgid "Godot will look for the cross-compiler executable in the AOT compilers folder. The location of this folder is ``<data_folder>/Tools/aot-compilers/``."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:355
msgid "In order to build the cross-compilers we recommend using these `build scripts <https://github.com/godotengine/godot-mono-builds>`_."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:358
msgid "After building them, copy the executable to the Godot AOT compilers directory. The executable name is ``<triple>-mono-sgen``, e.g.: ``aarch64-apple-darwin-mono-sgen``."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:362
msgid "Command-line options"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:364
msgid "The following is the list of command-line options available when building with the Mono module:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:367
msgid "**module_mono_enabled**\\ =yes | **no**"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:369
msgid "Build Godot with the Mono module enabled."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:371
msgid "**mono_glue**\\ =\\ **yes** | no"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:373
msgid "Whether to include the glue source files in the build and define ``MONO_GLUE_DISABLED`` as a preprocessor macro."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:376
msgid "**mono_prefix**\\ =path"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:378
msgid "Path to the Mono installation directory for the target platform and architecture."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:380
msgid "**mono_static**\\ =yes | no"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:382
msgid "Whether to link the Mono runtime statically."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:383
msgid "The default is **yes** for iOS and WASM, and **no** for other platforms."
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:385
msgid "**copy_mono_root**\\ =yes | **no**"
msgstr ""
#: ../../docs/development/compiling/compiling_with_mono.rst:387
msgid "Whether to copy the Mono framework assemblies and configuration files required by the Godot editor."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

View File

@@ -1,85 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0)
# This file is distributed under the same license as the Godot Engine package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-09-18 14:02+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:4
msgid "Compiling with script encryption key"
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:8
msgid "The export dialog gives you the option to encrypt your scripts with a 256-bit AES key when releasing your project. This will make sure your scripts are not stored in plain text and can not easily be ripped by some script kiddie."
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:12
msgid "Of course, the key needs to be stored in the binary, but if it's compiled, optimized and without symbols, it would take some effort to find it."
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:15
msgid "For this to work, you need to build the export templates from source, with that same key."
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:20
msgid "This will **not** work if you use official, precompiled export templates. It is absolutely **required** to compile your own export templates to use PCK encryption."
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:25
msgid "Step by step"
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:27
msgid "Generate a 256-bit AES key in hexadecimal format. You can use the aes-256-cbc variant from `this service <https://asecuritysite.com/encryption/keygen>`_."
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:30
msgid "Alternatively, you can generate it yourself using `OpenSSL <https://www.openssl.org/>`__ command-line tools:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:37
msgid "The output in ``godot.gdkey`` should be similar to:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:44
msgid "You can generate the key without redirecting the output to a file, but that way you can minimize the risk of exposing the key."
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:47
msgid "Set this key as environment variable in the console that you will use to compile Godot, like this:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:63
msgid "Compile Godot export templates and set them as custom export templates in the export preset options."
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:66
msgid "Set the encryption key in the **Script** tab of the export preset:"
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:70
msgid "Export the project. The game should run with encrypted scripts now."
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:73
msgid "Troubleshooting"
msgstr ""
#: ../../docs/development/compiling/compiling_with_script_encryption_key.rst:75
msgid "If you get an error like below, it means the key wasn't properly included in your Godot build. Godot is encrypting the scripts during export, but can't read them at runtime."
msgstr ""
#: ../../docs/<rst_epilog>:0
msgid "Translation status"
msgstr ""

Some files were not shown because too many files have changed in this diff Show More