build_langs: Add tr (20% complete), remove fi (4% only)

This commit is contained in:
Rémi Verschelde
2023-11-21 14:34:29 +01:00
parent 87510aa095
commit 05637249ee
429 changed files with 1 additions and 122134 deletions

View File

@@ -1,7 +1,6 @@
cs
de
es
fi
fr
it
ja
@@ -9,6 +8,7 @@ ko
pl
pt_BR
ru
tr
uk
zh_CN
zh_TW

View File

@@ -1,291 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Complying with licenses"
msgstr "Lisenssien hyväksyminen"
msgid "What are licenses?"
msgstr ""
msgid ""
"Godot is created and distributed under the `MIT License <https://opensource."
"org/licenses/MIT>`_. It doesn't have a sole owner either, as every "
"contributor that submits code to the project does it under this same license "
"and keeps ownership of the contribution."
msgstr ""
msgid ""
"The license is the legal requirement for you (or your company) to use and "
"distribute the software (and derivative projects, including games made with "
"it). Your game or project can have a different license, but it still needs "
"to comply with the original one."
msgstr ""
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 ""
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 ""
msgid ""
"Free assets in particular often come with licenses that require attribution. "
"Double-check their license before using those assets in a project."
msgstr ""
msgid "Requirements"
msgstr ""
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 ""
msgid "This text reads as follows:"
msgstr ""
msgid "This game uses Godot Engine, available under the following license:"
msgstr ""
"Peli käyttää Godot pelimoottoria, joka on saatavilla seuraavan lisenssin "
"alaisena:"
msgid ""
"Copyright (c) 2014-present Godot Engine contributors. Copyright (c) "
"2007-2014 Juan Linietsky, Ariel Manzur."
msgstr ""
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 ""
msgid ""
"The above copyright notice and this permission notice shall be included in "
"all copies or substantial portions of the Software."
msgstr ""
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 ""
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 ""
msgid "Inclusion"
msgstr "Liittäminen"
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 ""
"Lisenssi ei määrittele kuinka se tulee liittää, joten mikä tahansa tapa käy "
"kunhan sitä voidaan tarkastella jollain tapaa. Nämä ovat yleisimpiä "
"lähestymistapoja (riittää että toteuttaa yhden niistä, ei kaikkia)."
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 ""
msgid "For the engine itself:"
msgstr ""
msgid ":ref:`Engine.get_license_text<class_Engine_method_get_license_text>`"
msgstr ""
msgid "For third-party components used by the engine:"
msgstr ""
msgid ":ref:`Engine.get_license_info<class_Engine_method_get_license_info>`"
msgstr ""
msgid ""
":ref:`Engine.get_copyright_info<class_Engine_method_get_copyright_info>`"
msgstr ""
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 ""
msgid ":ref:`Engine.get_author_info<class_Engine_method_get_author_info>`"
msgstr ""
msgid ":ref:`Engine.get_donor_info<class_Engine_method_get_donor_info>`"
msgstr ""
msgid "Credits screen"
msgstr ""
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 ""
msgid "Licenses screen"
msgstr "Lisenssiruutu"
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 ""
msgid "Output log"
msgstr ""
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 ""
msgid "Accompanying file"
msgstr ""
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 ""
msgid "Printed manual"
msgstr ""
msgid ""
"If the game includes printed manuals, license text can be included there."
msgstr ""
#, fuzzy
msgid "Link to the license"
msgstr "Lisenssien hyväksyminen"
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 ""
#, fuzzy
msgid "Third-party licenses"
msgstr "Kolmannen osapuolen lisenssit"
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 ""
msgid "Here's a list of libraries requiring attribution:"
msgstr ""
msgid "FreeType"
msgstr "FreeType"
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 ""
msgid ""
"Portions of this software are copyright © <year> The FreeType Project (www."
"freetype.org). All rights reserved."
msgstr ""
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 ""
msgid "ENet"
msgstr ""
msgid ""
"Godot includes the `ENet <http://enet.bespin.org/>`_ library to handle high-"
"level multiplayer. ENet has similar licensing terms as Godot:"
msgstr ""
msgid "Copyright (c) 2002-2020 Lee Salzman"
msgstr ""
msgid "mbed TLS"
msgstr ""
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 ""
msgid "Copyright The Mbed TLS Contributors"
msgstr ""
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 ""
msgid "http://www.apache.org/licenses/LICENSE-2.0"
msgstr ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,675 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Documentation changelog"
msgstr "Dokumentaation muutosloki"
msgid ""
"The documentation is continually being improved. New releases include new "
"pages, fixes and updates to existing pages, and many updates to the :ref:"
"`class reference <doc_class_reference>`. Below is a list of new pages added "
"since version 3.0."
msgstr ""
msgid ""
"This document only contains new pages so not all changes are reflected, many "
"pages have been substantially updated but are not reflected in this document."
msgstr ""
#, fuzzy
msgid "New pages since version 4.0"
msgstr "Uudet oppaat versiosta 3.0 lähtien"
msgid "Development"
msgstr "Kehitys"
#, fuzzy
msgid ":ref:`doc_internal_rendering_architecture`"
msgstr ":ref:`doc_beziers_and_curves`"
#, fuzzy
msgid ":ref:`doc_using_sanitizers`"
msgstr ":ref:`doc_using_servers`"
#, fuzzy
msgid "Migrating"
msgstr "Valon valmismuuttujat"
#, fuzzy
msgid ":ref:`doc_upgrading_to_godot_4.1`"
msgstr ":ref:`doc_visual_shader_plugins`"
msgid "Physics"
msgstr "Fysiikkamallinnus"
#, fuzzy
msgid ":ref:`doc_troubleshooting_physics_issues`"
msgstr ":ref:`doc_webrtc`"
#, fuzzy
msgid "New pages since version 3.6"
msgstr "Uudet oppaat versiosta 3.0 lähtien"
msgid "2D"
msgstr "2D"
#, fuzzy
msgid ":ref:`doc_2d_antialiasing`"
msgstr ":ref:`doc_2d_sprite_animation`"
msgid "3D"
msgstr "3D"
#, fuzzy
msgid ":ref:`doc_3d_antialiasing`"
msgstr ":ref:`doc_godot_notifications`"
#, fuzzy
msgid ":ref:`doc_faking_global_illumination`"
msgstr ":ref:`doc_interpolation`"
#, fuzzy
msgid ":ref:`doc_introduction_to_global_illumination`"
msgstr ":ref:`doc_visual_shader_plugins`"
#, fuzzy
msgid ":ref:`doc_mesh_lod`"
msgstr ":ref:`doc_2d_meshes`"
#, fuzzy
msgid ":ref:`doc_occlusion_culling`"
msgstr ":ref:`doc_using_multimesh`"
#, fuzzy
msgid ":ref:`doc_using_sdfgi`"
msgstr ":ref:`doc_using_servers`"
#, fuzzy
msgid ":ref:`doc_using_decals`"
msgstr ":ref:`doc_signals`"
#, fuzzy
msgid ":ref:`doc_visibility_ranges`"
msgstr ":ref:`doc_visual_shader_plugins`"
#, fuzzy
msgid ":ref:`doc_volumetric_fog`"
msgstr ":ref:`doc_webrtc`"
#, fuzzy
msgid ":ref:`doc_variable_rate_shading`"
msgstr ":ref:`doc_particle_shader`"
#, fuzzy
msgid ":ref:`doc_physical_light_and_camera_units`"
msgstr ":ref:`doc_visual_shader_plugins`"
msgid "Animation"
msgstr "Animaatio"
#, fuzzy
msgid ":ref:`doc_creating_movies`"
msgstr ":ref:`doc_making_trees`"
msgid "Assets pipeline"
msgstr ""
#, fuzzy
msgid ":ref:`doc_retargeting_3d_skeletons`"
msgstr ":ref:`doc_making_trees`"
#, fuzzy
msgid ":ref:`doc_custom_platform_ports`"
msgstr ":ref:`doc_using_multimesh`"
#, fuzzy
msgid ":ref:`doc_upgrading_to_godot_4`"
msgstr ":ref:`doc_visual_shader_plugins`"
#, fuzzy
msgid ":ref:`doc_large_world_coordinates`"
msgstr ":ref:`doc_godot_interfaces`"
msgid "Scripting"
msgstr "Skriptaus"
#, fuzzy
msgid ":ref:`doc_custom_performance_monitors`"
msgstr ":ref:`doc_data_preferences`"
#, fuzzy
msgid ":ref:`doc_c_sharp_collections`"
msgstr ":ref:`doc_interpolation`"
#, fuzzy
msgid ":ref:`doc_c_sharp_global_classes`"
msgstr "Katso myös: :ref:`doc_c_sharp_signals`."
#, fuzzy
msgid ":ref:`doc_c_sharp_variant`"
msgstr ":ref:`doc_2d_sprite_animation`"
msgid "Shaders"
msgstr ""
#, fuzzy
msgid ":ref:`doc_compute_shaders`"
msgstr ":ref:`doc_particle_shader`"
msgid "Workflow"
msgstr ""
#, fuzzy
msgid ":ref:`doc_pr_review_guidelines`"
msgstr ":ref:`doc_data_preferences`"
msgid "XR"
msgstr ""
#, fuzzy
msgid ":ref:`doc_introducing_xr_tools`"
msgstr ":ref:`doc_visual_shader_plugins`"
#, fuzzy
msgid ":ref:`doc_xr_action_map`"
msgstr ":ref:`doc_interpolation`"
#, fuzzy
msgid ":ref:`doc_deploying_to_android`"
msgstr ":ref:`doc_webrtc`"
#, fuzzy
msgid "New pages since version 3.5"
msgstr "Uudet oppaat versiosta 3.0 lähtien"
msgid "None."
msgstr ""
#, fuzzy
msgid "New pages since version 3.4"
msgstr "Uudet oppaat versiosta 3.0 lähtien"
#, fuzzy
msgid ":ref:`doc_3d_text`"
msgstr ":ref:`doc_webrtc`"
#, fuzzy
msgid ":ref:`doc_playing_videos`"
msgstr ":ref:`doc_making_trees`"
msgid "Editor"
msgstr "Editori"
#, fuzzy
msgid ":ref:`doc_managing_editor_features`"
msgstr ":ref:`doc_making_trees`"
#, fuzzy
msgid "New pages since version 3.3"
msgstr "Uudet oppaat versiosta 3.0 lähtien"
msgid "C++"
msgstr ""
#, fuzzy
msgid ":ref:`doc_cpp_usage_guidelines`"
msgstr ":ref:`doc_using_multimesh`"
msgid "GDScript"
msgstr "GDScript"
#, fuzzy
msgid ":ref:`doc_gdscript_documentation_comments`"
msgstr ":ref:`doc_gui_containers`"
#, fuzzy
msgid "New pages since version 3.2"
msgstr "Uudet oppaat versiosta 3.0 lähtien"
#, fuzzy
msgid ":ref:`doc_3d_rendering_limitations`"
msgstr ":ref:`doc_2d_sprite_animation`"
msgid "About"
msgstr "Tietoja"
#, fuzzy
msgid ":ref:`doc_troubleshooting`"
msgstr ":ref:`doc_interpolation`"
#, fuzzy
msgid ":ref:`doc_list_of_features`"
msgstr ":ref:`doc_input_examples`"
#, fuzzy
msgid ":ref:`doc_release_policy`"
msgstr ":ref:`doc_surfacetool`"
msgid "Best practices"
msgstr ""
#, fuzzy
msgid ":ref:`doc_version_control_systems`"
msgstr ":ref:`doc_visual_shader_plugins`"
msgid "Community"
msgstr "Yhteisö"
#, fuzzy
msgid ":ref:`doc_best_practices_for_engine_contributors`"
msgstr "Katso :ref:`doc_ways_to_contribute`."
#, fuzzy
msgid ":ref:`doc_bisecting_regressions`"
msgstr ":ref:`doc_using_servers`"
#, fuzzy
msgid ":ref:`doc_editor_and_docs_localization`"
msgstr "Katso :ref:`doc_instancing` oppiaksesi enemmän ilmentymistä."
#, fuzzy
msgid ":ref:`doc_introduction_to_editor_development`"
msgstr "Johdanto vienteihin"
#, fuzzy
msgid ":ref:`doc_editor_style_guide`"
msgstr ":ref:`doc_inspector_plugins`"
#, fuzzy
msgid ":ref:`doc_common_engine_methods_and_macros`"
msgstr ":ref:`doc_beziers_and_curves`"
#, fuzzy
msgid ":ref:`doc_vulkan_validation_layers`"
msgstr ":ref:`doc_animation_tree`"
#, fuzzy
msgid ":ref:`doc_gdscript_grammar`"
msgstr ":ref:`doc_2d_sprite_animation`"
msgid "Configuring an IDE: :ref:`doc_configuring_an_ide_code_blocks`"
msgstr ""
#, fuzzy
msgid ":ref:`doc_default_key_mapping`"
msgstr ":ref:`doc_2d_sprite_animation`"
#, fuzzy
msgid ":ref:`doc_using_the_web_editor`"
msgstr ":ref:`doc_using_servers`"
msgid "Export"
msgstr "Vie"
#, fuzzy
msgid ":ref:`doc_exporting_for_dedicated_servers`"
msgstr "Vienti Google Play -kauppaan"
msgid "Input"
msgstr "Syöte"
msgid ":ref:`doc_controllers_gamepads_joysticks`"
msgstr ""
msgid "Math"
msgstr ""
#, fuzzy
msgid ":ref:`doc_random_number_generation`"
msgstr "Satunnaisfunktiot"
msgid "Platform-specific"
msgstr "Alustakohtaista"
#, fuzzy
msgid ":ref:`doc_plugins_for_ios`"
msgstr ":ref:`doc_inspector_plugins`"
#, fuzzy
msgid ":ref:`doc_ios_plugin`"
msgstr ":ref:`doc_android_plugin`"
#, fuzzy
msgid ":ref:`doc_html5_shell_classref`"
msgstr ":ref:`doc_spatial_shader`"
#, fuzzy
msgid ":ref:`doc_collision_shapes_2d`"
msgstr ":ref:`doc_visual_shader_plugins`"
#, fuzzy
msgid ":ref:`doc_collision_shapes_3d`"
msgstr ":ref:`doc_visual_shader_plugins`"
#, fuzzy
msgid ":ref:`doc_shaders_style_guide`"
msgstr ":ref:`doc_particle_shader`"
#, fuzzy
msgid ":ref:`doc_debugger_panel`"
msgstr "GDScript :ref:`debuggeri <doc_debugger_panel>`."
#, fuzzy
msgid ":ref:`doc_creating_script_templates`"
msgstr "Skriptin luonti"
#, fuzzy
msgid ":ref:`doc_evaluating_expressions`"
msgstr "Laske valinnan tulos"
#, fuzzy
msgid ":ref:`doc_what_is_gdextension`"
msgstr ":ref:`doc_making_trees`"
msgid ""
":ref:`doc_gdscript_warning_system` (split from :ref:"
"`doc_gdscript_static_typing`)"
msgstr ""
#, fuzzy
msgid "User Interface (UI)"
msgstr "Godotin käyttöliittymät"
#, fuzzy
msgid ":ref:`doc_control_node_gallery`"
msgstr ":ref:`doc_visual_shader_plugins`"
#, fuzzy
msgid "New pages since version 3.1"
msgstr "Uudet oppaat versiosta 3.0 lähtien"
msgid "Project workflow"
msgstr "Projektin työnkulku"
msgid ":ref:`doc_android_custom_build`"
msgstr ""
msgid ":ref:`doc_2d_sprite_animation`"
msgstr ":ref:`doc_2d_sprite_animation`"
msgid "Audio"
msgstr "Äänet"
#, fuzzy
msgid ":ref:`doc_recording_with_microphone`"
msgstr ":ref:`doc_complying_with_licenses`"
msgid ":ref:`doc_sync_with_audio`"
msgstr ":ref:`doc_sync_with_audio`"
msgid ":ref:`doc_beziers_and_curves`"
msgstr ":ref:`doc_beziers_and_curves`"
msgid ":ref:`doc_interpolation`"
msgstr ":ref:`doc_interpolation`"
msgid "Inputs"
msgstr "Syötteet"
msgid ":ref:`doc_input_examples`"
msgstr ":ref:`doc_input_examples`"
msgid "Internationalization"
msgstr ""
msgid ":ref:`doc_localization_using_gettext`"
msgstr ":ref:`doc_localization_using_gettext`"
msgid "Shading"
msgstr "Grafiikan koodaus"
msgid "Your First Shader Series:"
msgstr "Ensimmäinen sävytinjaksosi:"
#, fuzzy
msgid ":ref:`doc_introduction_to_shaders`"
msgstr ":ref:`doc_visual_shader_plugins`"
msgid ":ref:`doc_your_first_canvasitem_shader`"
msgstr ":ref:`doc_your_first_canvasitem_shader`"
msgid ":ref:`doc_your_first_spatial_shader`"
msgstr ":ref:`doc_your_first_spatial_shader`"
msgid ":ref:`doc_your_second_spatial_shader`"
msgstr ""
#, fuzzy
msgid ":ref:`doc_visual_shaders`"
msgstr ":ref:`doc_visual_shader_plugins`"
msgid "Networking"
msgstr ""
msgid ":ref:`doc_webrtc`"
msgstr ":ref:`doc_webrtc`"
msgid "Plugins"
msgstr "Liitännäiset"
msgid ":ref:`doc_android_plugin`"
msgstr ":ref:`doc_android_plugin`"
msgid ":ref:`doc_inspector_plugins`"
msgstr ":ref:`doc_inspector_plugins`"
msgid ":ref:`doc_visual_shader_plugins`"
msgstr ":ref:`doc_visual_shader_plugins`"
msgid "Multi-threading"
msgstr "Monisäikeisyys"
msgid ":ref:`doc_using_multiple_threads`"
msgstr ":ref:`doc_using_multiple_threads`"
msgid "Creating content"
msgstr "Sisällön luominen"
msgid "Procedural geometry series:"
msgstr "Proseduraalisen geometrian sarja:"
msgid ":ref:`Procedural geometry <toc-procedural_geometry>`"
msgstr ":ref:`Proseduraalinen geometria <toc-procedural_geometry>`"
msgid ":ref:`doc_arraymesh`"
msgstr ":ref:`doc_arraymesh`"
msgid ":ref:`doc_surfacetool`"
msgstr ":ref:`doc_surfacetool`"
msgid ":ref:`doc_meshdatatool`"
msgstr ":ref:`doc_meshdatatool`"
#, fuzzy
msgid ":ref:`doc_immediatemesh`"
msgstr ":ref:`doc_immediategeometry`"
msgid "Optimization"
msgstr "Optimointi"
msgid ":ref:`doc_using_multimesh`"
msgstr ":ref:`doc_using_multimesh`"
msgid ":ref:`doc_using_servers`"
msgstr ":ref:`doc_using_servers`"
msgid "Legal"
msgstr "Laillinen"
msgid ":ref:`doc_complying_with_licenses`"
msgstr ":ref:`doc_complying_with_licenses`"
#, fuzzy
msgid "New pages since version 3.0"
msgstr "Uudet oppaat versiosta 3.0 lähtien"
msgid "Step by step"
msgstr "Kohta kohdalta"
msgid ":ref:`doc_signals`"
msgstr ":ref:`doc_signals`"
msgid "Exporting"
msgstr "Vienti"
msgid ":ref:`doc_gdscript_static_typing`"
msgstr ""
msgid "Best Practices:"
msgstr "Parhaat käytännöt:"
msgid ":ref:`doc_introduction_best_practices`"
msgstr ""
msgid ":ref:`doc_what_are_godot_classes`"
msgstr ""
msgid ":ref:`doc_scene_organization`"
msgstr ":ref:`doc_scene_organization`"
msgid ":ref:`doc_scenes_versus_scripts`"
msgstr ""
msgid ":ref:`doc_autoloads_versus_internal_nodes`"
msgstr ""
msgid ":ref:`doc_node_alternatives`"
msgstr ""
msgid ":ref:`doc_godot_interfaces`"
msgstr ":ref:`doc_godot_interfaces`"
msgid ":ref:`doc_godot_notifications`"
msgstr ":ref:`doc_godot_notifications`"
msgid ":ref:`doc_data_preferences`"
msgstr ":ref:`doc_data_preferences`"
msgid ":ref:`doc_logic_preferences`"
msgstr ":ref:`doc_logic_preferences`"
msgid ":ref:`doc_2d_lights_and_shadows`"
msgstr ""
msgid ":ref:`doc_2d_meshes`"
msgstr ":ref:`doc_2d_meshes`"
msgid ":ref:`doc_csg_tools`"
msgstr ""
msgid ":ref:`doc_animating_thousands_of_fish`"
msgstr ":ref:`doc_animating_thousands_of_fish`"
msgid ":ref:`doc_controlling_thousands_of_fish`"
msgstr ""
msgid ":ref:`doc_ragdoll_system`"
msgstr ""
msgid ":ref:`doc_soft_body`"
msgstr ""
msgid ":ref:`doc_2d_skeletons`"
msgstr ""
msgid ":ref:`doc_animation_tree`"
msgstr ":ref:`doc_animation_tree`"
msgid "GUI"
msgstr "Graafinen käyttöliittymä"
msgid ":ref:`doc_gui_containers`"
msgstr ":ref:`doc_gui_containers`"
msgid "Viewports"
msgstr ""
msgid ":ref:`doc_viewport_as_texture`"
msgstr ""
msgid ":ref:`doc_custom_postprocessing`"
msgstr ""
#, fuzzy
msgid ":ref:`doc_converting_glsl_to_godot_shaders`"
msgstr ":ref:`doc_visual_shader_plugins`"
msgid ":ref:`doc_advanced_postprocessing`"
msgstr ""
msgid "Shading Reference:"
msgstr ""
msgid ":ref:`doc_shading_language`"
msgstr ""
msgid ":ref:`doc_spatial_shader`"
msgstr ":ref:`doc_spatial_shader`"
msgid ":ref:`doc_canvas_item_shader`"
msgstr ""
msgid ":ref:`doc_particle_shader`"
msgstr ":ref:`doc_particle_shader`"
msgid ":ref:`doc_making_main_screen_plugins`"
msgstr ":ref:`doc_making_main_screen_plugins`"
#, fuzzy
msgid ":ref:`doc_3d_gizmo_plugins`"
msgstr ":ref:`doc_spatial_gizmo_plugins`"
msgid ":ref:`doc_customizing_html5_shell`"
msgstr ""
msgid ":ref:`doc_thread_safe_apis`"
msgstr ""
msgid ":ref:`doc_making_trees`"
msgstr ":ref:`doc_making_trees`"
msgid "Miscellaneous"
msgstr "Sekalaista"
msgid ":ref:`doc_jitter_stutter`"
msgstr ""
msgid ":ref:`doc_running_code_in_the_editor`"
msgstr ""
msgid ":ref:`doc_change_scenes_manually`"
msgstr ""
msgid "Compiling"
msgstr "Kääntäminen"
msgid ":ref:`doc_optimizing_for_size`"
msgstr ""
msgid ":ref:`doc_compiling_with_script_encryption_key`"
msgstr ""
msgid "Engine development"
msgstr "Pelimoottorin kehitys"
msgid ":ref:`doc_binding_to_external_libraries`"
msgstr ":ref:`doc_binding_to_external_libraries`"
msgid "Translation status"
msgstr "Käännöksen tila"

File diff suppressed because it is too large Load Diff

View File

@@ -1,223 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Introduction"
msgstr "Johdanto"
#, fuzzy
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 ""
"Tervetuloa Godot Enginen viralliseen dokumentaatioon. Godot Engine on "
"yhteisön ohjaama, ilmainen avoimen lähdekoodin 2D-a 3D-pelimoottori! Tämän "
"puheen takaa löydät tehokkaan ja käyttäjäystävällisen työkalun, jolla voit "
"kehittää minkälaisen pelin tahansa, mille tahansa alustalle, ilman "
"minkäänlaisia käyttörajoituksia."
#, fuzzy
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 ""
"Tämän sivun tarkoitus on antaa laaja kuva pelimoottorista ja tämän "
"dokumentaation sisällöstä, jotta tietäsit mistä aloittaa jos olet "
"aloittelija tai mistä löytää tietoa jostain tietystä ominaisuudesta."
msgid "Before you start"
msgstr "Ennen aloittamista"
#, fuzzy
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 ""
":ref:`Oppaat ja resurssit <doc_community_tutorials>` sivusto listaa yhteisön "
"tekemiä opetusvideoita. Jos suosit videota tekstin sijaan, kannattaa "
"vilkaista niitä."
#, fuzzy
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 ""
"Jos sinulla on ongelmia jonkin kurssin tai projektin kanssa, voit etsiä "
"helposti apua monilta :ref:`Yhteisö kanavilta <doc_community_channels>`, "
"varsinkin Godot:n Discord yhteisöstä, Q&A:sta, ja IRC:stä."
msgid "About Godot Engine"
msgstr "Tietoa Godot-pelimoottorista"
#, fuzzy
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 ""
"Pelimoottori on monimutkainen työkalu, joten on vaikeaa esitellä Godotia "
"muutamalla sanalla. Tässä on pikainen yhteenveto, jota voit vapaasti "
"uudelleenkäyttää jos tarvitset lyhyen selostuksen Godot Enginestä."
#, fuzzy
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 ""
"Godot Engine on ominaisuuksia täynnä oleva, monialustainen pelimoottori 2D-"
"ja 3D-pelien tekemiseen yhdistetyllä käyttöliittymällä. Se tarjoaa kattavan "
"määrän yleisimpiä työkaluja, joten käyttäjät voivat keskittyä pelien "
"tekemiseen ilman että pyörää tarvitsee keksiä uudelleen. Pelit voidaan jakaa "
"napin painalluksella useille alustoille, sisältäen niin isot työpöytäalustat "
"(Linux, macOS, Windows) kuin mobiililaitteet (Android, iOS) ja web-pohjaiset "
"(HTML5) alustat."
#, fuzzy
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 ""
"Godot on täysin ilmainen ja avoimen lähdekoodin ohjelma hyvin sallivalla MIT "
"lisenssillä. Ei vaatimuksia, ei rojalteja, ei mitään. Käyttäjien pelit ovat "
"heidän omiaan, aina viimeistä pelimoottorin koodiriviä myöten. Godotin "
"kehitys on täysin itsenäistä ja yhteisövetoista, mahdollistaen käyttäjiä "
"muovaamaan moottoria odotuksiaan vastaavaksi. Sitä tukee Software Freedom "
"Conservancy <https://sfconservancy.org> _not-for-profit. (voittoa "
"tavoittelematon)."
msgid "Organization of the documentation"
msgstr "Dokumentaation rakenne"
msgid "This documentation is organized into several sections:"
msgstr ""
#, fuzzy
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 ""
":ref:`sec-general` osuus sisältää tämän johdannon ja tietoa moottorista, sen "
"historiasta, lisensoinnista, tekijöistä, jne. Se myös sisältää :ref:"
"`doc_faq`."
#, fuzzy
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 ""
":ref:`sec-learn` osuus on pääasiallinen syy tämän dokumentin olemassaololle, "
"sillä se sisältää kaiken tarvittavan tiedon moottorin käyttämisestä pelien "
"tekemiseen. Se alkaa :ref:`Askelittain <toc-learn-step_by_step>` oppaalla, "
"jonka tulisi olla aloituspiste kaikille uusille käyttäjille."
#, fuzzy
msgid ""
"The **Manual** can be read or referenced as needed, in any order. It "
"contains feature-specific tutorials and documentation."
msgstr ""
":ref:`sec-tutorials` osuutta voidaan lukea tarvittaessa ja missä tahansa "
"järjestyksessä. Se sisältää ominaisuuskohtaisia tutoriaaleja ja "
"dokumentaatiota."
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 ""
#, fuzzy
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 ""
":ref:`sec-community` osuudesta löytyy tietoa pelimoottorin kehittämiseen "
"osallistumisesta ja yhteisön elosta, esim. kuinka raportoida bugeja, auttaa "
"dokumentoinnissa, jne. Se sisältää myös reitit erilaisiin yhteisökanaviin, "
"kuten IRC ja Discord, sekä listan suositelluista tämän dokumentaation "
"ulkopuolisista kolmannen osapuolen oppaista."
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 ""
#, fuzzy
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 ""
"Tämän dokumentaation lisäksi voit myös katsoa erilaisia Godot demoprojekteja "
"<https://github.com/godotengine/godot-demo-projects>`_."
#, fuzzy
msgid "About this documentation"
msgstr "Dokumentaatiosta"
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 ""
#, fuzzy
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 ""
"Kaikki sisältö on sallivan Creative Commons Attribution 3.0 (`CC-BY 3.0 "
"<https://creativecommons.org/licenses/by/3.0/>`_) lisenssin alaista, "
"liitteellä \"Juan Linietsky, Ariel Manzur and the Godot Engine community\"."
#, fuzzy
msgid "*Have fun reading and making games with Godot Engine!*"
msgstr "Pidä hauskaa lukien ja pelejä tehden Godot Enginellä!"
msgid "Translation status"
msgstr "Käännöksen tila"

File diff suppressed because it is too large Load Diff

View File

@@ -1,499 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Godot release policy"
msgstr "Godotin julkaisukäytäntö"
#, fuzzy
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 ""
"Godotin julkaisupolitiikka on jatkuvassa kehityksessä. Alla kuvatun on "
"tarkoitus antaa yleiskuva siitä mitä on odotettavissa, mutta se mitä todella "
"tapahtuu riippuu keskeisten tekijöiden valinnoista ja yhteisön tarpeista "
"tiettynä ajankohtana."
msgid "Godot versioning"
msgstr ""
msgid ""
"Godot loosely follows `Semantic Versioning <https://semver.org/>`__ with a "
"``major.minor.patch`` versioning system, albeit with an interpretation of "
"each term adapted to the complexity of a game engine:"
msgstr ""
msgid ""
"The ``major`` version is incremented when major compatibility breakages "
"happen which imply significant porting work to move projects from one major "
"version to another."
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"Updating to new patch versions is therefore considered safe and strongly "
"recommended to all users of a given stable branch."
msgstr ""
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 ""
msgid "Release support timeline"
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "**Version**"
msgstr "**Kuvaus**"
msgid "**Release date**"
msgstr ""
msgid "**Support level**"
msgstr ""
msgid "Godot 4.2 (`master`)"
msgstr ""
msgid "November 2023 (estimate)"
msgstr ""
msgid ""
"|unstable| *Development.* Receives new features, usability and performance "
"improvements, as well as bug fixes, while under development."
msgstr ""
#, fuzzy
msgid "unstable"
msgstr "Ota käyttöön"
#, fuzzy
msgid "Godot 4.1"
msgstr "Godot"
msgid "July 2023"
msgstr ""
msgid ""
"|supported| Receives fixes for bugs and security issues, as well as patches "
"that enable platform support."
msgstr ""
#, fuzzy
msgid "supported"
msgstr "Tuettu animaatio"
#, fuzzy
msgid "Godot 4.0"
msgstr "Godot"
msgid "March 2023"
msgstr ""
#, fuzzy
msgid "Godot 3.6 (`3.x`, LTS)"
msgstr "Godot 3.2"
msgid "Q3 2023 (estimate)"
msgstr ""
msgid ""
"|supported| *Beta.* Receives new features, usability and performance "
"improvements, as well as bug fixes, while under development."
msgstr ""
#, fuzzy
msgid "Godot 3.5"
msgstr "Godot 3.2"
msgid "August 2022"
msgstr ""
#, fuzzy
msgid "Godot 3.4"
msgstr "Godot 3.2"
msgid "November 2021"
msgstr ""
msgid ""
"|eol| No longer supported, as fully superseded by the compatible 3.5 release "
"(last update: 3.4.5)."
msgstr ""
msgid "eol"
msgstr ""
#, fuzzy
msgid "Godot 3.3"
msgstr "Godot 3.2"
msgid "April 2021"
msgstr ""
msgid ""
"|eol| No longer supported, as fully superseded by the compatible 3.4 release "
"(last update: 3.3.4)."
msgstr ""
msgid "Godot 3.2"
msgstr "Godot 3.2"
msgid "January 2020"
msgstr ""
msgid "|eol| No longer supported (last update: 3.2.3)."
msgstr ""
msgid "Godot 3.1"
msgstr "Godot 3.1"
msgid "March 2019"
msgstr ""
msgid "|eol| No longer supported (last update: 3.1.2)."
msgstr ""
msgid "Godot 3.0"
msgstr "Godot 3.0"
msgid "January 2018"
msgstr ""
msgid "|eol| No longer supported (last update: 3.0.6)."
msgstr ""
msgid "Godot 2.1"
msgstr "Godot 2.1"
msgid "July 2016"
msgstr ""
msgid "|eol| No longer supported (last update: 2.1.6)."
msgstr ""
#, fuzzy
msgid "Godot 2.0"
msgstr "Godot"
msgid "February 2016"
msgstr ""
msgid "|eol| No longer supported (last update: 2.0.4.1)."
msgstr ""
msgid "Godot 1.1"
msgstr "Godot 1.1"
msgid "May 2015"
msgstr ""
msgid "|eol| No longer supported."
msgstr ""
#, fuzzy
msgid "Godot 1.0"
msgstr "Godot"
msgid "December 2014"
msgstr ""
#, fuzzy
msgid "partial"
msgstr "Partikkelit"
msgid ""
"**Legend:** |supported| Full support |partial| Partial support |eol| No "
"support (end of life) |unstable| Development version"
msgstr ""
msgid ""
"Pre-release Godot versions aren't intended to be used in production and are "
"provided for testing purposes only."
msgstr ""
msgid ""
"See :ref:`doc_upgrading_to_godot_4` for instructions on migrating a project "
"from Godot 3.x to 4.x."
msgstr ""
#, fuzzy
msgid "Which version should I use for a new project?"
msgstr "Mitä minun tulisi käyttää?"
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 ""
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 ""
msgid "Should I upgrade my project to use new engine versions?"
msgstr ""
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 ""
msgid ""
"That said, we do our best to keep minor and especially patch releases "
"compatible with existing projects."
msgstr ""
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 ""
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 ""
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 ""
msgid "When is the next release out?"
msgstr ""
msgid ""
"While Godot contributors aren't working under any deadlines, we strive to "
"publish minor releases relatively frequently."
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid "What are the criteria for compatibility across engine versions?"
msgstr ""
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 ""
msgid "The following changes are acceptable in patch releases:"
msgstr ""
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 ""
msgid "Adding a new optional parameter to a method."
msgstr ""
msgid "Small-scale editor usability tweaks."
msgstr ""
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 ""
msgid ""
"The following changes are acceptable in minor releases, but not patch "
"releases:"
msgstr ""
#, fuzzy
msgid "Significant new features."
msgstr "Ominaisuudet"
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 ""
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 ""
msgid "Changes that affect the default project theme's visuals."
msgstr ""
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 ""
msgid "Performance optimizations that result in visual changes."
msgstr ""
msgid ""
"The following changes are considered **compatibility-breaking** and can only "
"be performed in a new major release:"
msgstr ""
msgid "Renaming or removing a method, member variable, or class."
msgstr ""
msgid ""
"Modifying a node's inheritance tree by making it inherit from a different "
"class."
msgstr ""
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 ""
msgid ""
"Since Godot 5.0 hasn't been branched off yet, we currently discourage making "
"compatibility-breaking changes of this kind."
msgstr ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,409 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Troubleshooting"
msgstr "Ongelmien ratkonta"
msgid ""
"This page lists common issues encountered when using Godot and possible "
"solutions."
msgstr ""
"Tämä sivu listaa yleisiä ongelmia ja mahdollisia ratkaisuja niihin Godotia "
"käyttäessä."
#, fuzzy
msgid ""
"See :ref:`doc_using_the_web_editor` for caveats specific to the Web version "
"of the Godot editor."
msgstr ""
"Katso :ref:`doc_using_the_web_editor` Godot-editorin HTML5-versiota "
"koskevista varoituksista."
msgid ""
"The editor runs slowly and uses all my CPU and GPU resources, making my "
"computer noisy"
msgstr ""
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 ""
msgid "There are several ways to improve performance and battery life:"
msgstr ""
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 ""
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 ""
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 ""
msgid ""
"The editor stutters and flickers on my variable refresh rate monitor (G-Sync/"
"FreeSync)"
msgstr ""
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 ""
#, fuzzy
msgid "There are several workarounds for this:"
msgstr "Tähän on useita syitä:"
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 ""
msgid ""
"Alternatively, disable variable refresh rate on your monitor or in the "
"graphics driver."
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "The editor or project takes a very long time to start"
msgstr "Editorin tai projektin käynnistyminen kestää pitkään."
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 ""
#, fuzzy
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 ""
"Tämä on `tuttu vika <https://github.com/godotengine/godot/issues/20566>`__ "
"Windowsissa, kun on liitetty tiettyjä USB-lisälaitteita. Erityisesti "
"Corsair'in iCUE-ohjelmisto näyttää aiheuttavan vian. Kokeile päivittää USB-"
"lisälaitteiden' ajurit niiden uusimpaan versioon. Jos vika jatkuu, sinun on "
"irrotettava vialliset oheislaitteet ennen editorin avaamista. Sen jälkeen "
"voit liittää oheislaitteet uudelleen."
#, fuzzy
msgid "The Godot editor appears frozen after clicking the system console"
msgstr ""
"Godot-muokkain näyttää jähmettyneeltä, kun olet napsauttanut "
"järjestelmäkonsolia."
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 ""
"Kun käytät Godotia Windowsissa, kun järjestelmäkonsoli on käytössä, voit "
"vahingossa ottaa käyttöön *valintatilan* klikkaamalla komentoikkunan "
"sisällä. Tämä Windows-kohtainen käyttäytyminen pysäyttää sovelluksen, jotta "
"voit valita tekstiä järjestelmäkonsolin sisällä. Godot ei voi ohittaa tätä "
"järjestelmäkohtaista käyttäytymistä."
msgid ""
"To solve this, select the system console window and press Enter to leave "
"selection mode."
msgstr ""
"Voit ratkaista tämän valitsemalla järjestelmän konsoli-ikkunan ja "
"poistumalla valintatilasta painamalla Enter-näppäintä."
msgid ""
"The Godot editor's macOS dock icon gets duplicated every time it is manually "
"moved"
msgstr ""
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 ""
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 ""
msgid ""
"To avoid this issue, keep the Godot editor's dock icon at its default "
"location as created by macOS."
msgstr ""
#, fuzzy
msgid ""
"Some text such as \"NO DC\" appears in the top-left corner of the Project "
"Manager and editor window"
msgstr ""
"Projektinhallinta- ja muokkain-ikkunan vasempaan yläkulmaan ilmestyy teksti, "
"kuten \"NO DC\"."
msgid ""
"This is caused by the NVIDIA graphics driver injecting an overlay to display "
"information."
msgstr ""
"Tämä johtuu siitä, että NVIDIA-näytönohjain lisää peittokuvan tietojen "
"näyttämiseksi."
msgid ""
"To disable this overlay on Windows, restore your graphics driver settings to "
"the default values in the NVIDIA Control Panel."
msgstr ""
"Jos haluat poistaa tämän päällekkäisyyden käytöstä Windowsissa, palauta "
"grafiikkaohjaimen asetukset NVIDIAn ohjauspaneelin oletusarvoihin."
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 ""
"Voit poistaa tämän päällekkäisyyden käytöstä Linuxissa avaamalla ``nvidia-"
"settings``, siirtymällä kohtaan **X Screen 0 > OpenGL-asetukset** ja "
"poistamalla sen jälkeen valintaruudun **Enable Graphics API Visual "
"Indicator**."
#, fuzzy
msgid "The editor or project appears overly sharp or blurry"
msgstr "Editorin tai projektin käynnistyminen kestää pitkään."
msgid ""
"Correct appearance (left), oversharpened appearance due to graphics driver "
"sharpening (right)"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"After changing options in the graphics driver or third-party utilities, "
"restart Godot to make the changes effective."
msgstr ""
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 ""
#, fuzzy
msgid "The editor or project appears to have washed out colors"
msgstr "Editorin tai projektin käynnistyminen kestää pitkään."
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 ""
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 ""
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 ""
msgid "Support for HDR *output* is planned in a future release."
msgstr ""
msgid ""
"The editor/project freezes or displays glitched visuals after resuming the "
"PC from suspend"
msgstr ""
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 ""
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 ""
msgid ""
"To avoid losing work, save scenes in the editor before putting the PC to "
"sleep."
msgstr ""
#, fuzzy
msgid ""
"The project works when run from the editor, but fails to load some files "
"when running from an exported copy"
msgstr ""
"Projekti toimii, kun se ajetaan muokkaimesta, mutta se ei lataa joitakin "
"tiedostoja, kun se ajetaan viedystä kopiosta."
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 ""
"Tämä johtuu yleensä siitä, että unohdit määrittää suodattimen muille kuin "
"resurssitiedostoille Vienti-valintaikkunassa. Oletusarvoisesti Godot "
"sisällyttää PCK-tiedostoon vain todelliset *resurssit*. Joitakin yleisesti "
"käytettyjä tiedostoja, kuten JSON-tiedostoja, ei pidetä resursseina. Jos "
"esimerkiksi lataat ``test.json`` vietyyn projektiin, sinun on määriteltävä "
"``*.json`` ei-resurssien vientisuodattimeen. Katso lisätietoja kohdasta :ref:"
"`doc_exporting_projects_export_mode`."
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 ""
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 ""
"Windowsissa tämä voi johtua myös :ref:`case sensitivity "
"<doc_project_organization_case_sensitivity>` -ongelmista. Jos viittaat "
"resurssiin skriptissäsi isolla alkukirjaimella kuin tiedostojärjestelmässä, "
"lataus epäonnistuu kun viet projektin. Tämä johtuu siitä, että virtuaalinen "
"PCK-tiedostojärjestelmä on kirjainherkkä, kun taas Windows'n "
"tiedostojärjestelmä ei ole oletusarvoisesti kirjainherkkä."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,24 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Asset Library"
msgstr "Asset-kirjasto"
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,347 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Submitting to the Asset Library"
msgstr ""
msgid "Introduction"
msgstr "Johdanto"
msgid ""
"This tutorial aims to serve as a guide on how you can submit your own assets "
"to the `Godot Asset Library <https://godotengine.org/asset-library/asset>`_ "
"and share them with the Godot community."
msgstr ""
msgid ""
"As mentioned in the :ref:`doc_using_assetlib` document, in order to be able "
"to submit assets to the AssetLib, you need to have a registered account, and "
"be logged in."
msgstr ""
msgid "Submission guidelines"
msgstr ""
msgid ""
"Before submitting your asset, please ensure it follows all of the "
"requirements, and also consider following the recommendations."
msgstr ""
msgid "Requirements"
msgstr ""
msgid ""
"Generally speaking, most assets people submit to the asset library are "
"accepted. However, in order for your asset to be accepted, there are a few "
"requirements your asset needs to meet to be approved."
msgstr ""
msgid ""
"The asset must **work**. If the asset doesn't run or otherwise doesn't work "
"in the specified Godot version, then it will be rejected."
msgstr ""
msgid ""
"The asset must have a proper **.gitignore** file. It's important to keep "
"redundant data out of the repository. `Here's a template. <https://raw."
"githubusercontent.com/aaronfranke/gitignore/godot/Godot.gitignore>`_"
msgstr ""
msgid ""
"No **submodules**, or any submodules must be non-essential. GitHub does not "
"include submodules in the downloaded ZIP file, so if the asset needs the "
"contents of the submodule, your asset won't work."
msgstr ""
msgid ""
"The **license** needs to be correct. The license listed on the asset library "
"must match the license in the repository. The repo MUST have a license file, "
"called either \"LICENSE\" or \"LICENSE.md\". This file must contain the "
"license text itself and a copyright statement that includes the year(s) and "
"copyright holder."
msgstr ""
msgid ""
"Use proper **English** for the name and description of your asset. This "
"includes using correct capitalization, and using full sentences in the "
"description. You can also include other languages, but there should at least "
"be an English version."
msgstr ""
msgid ""
"The icon link must be a **direct link**. For icons hosted on GitHub, the "
"link must start with \"raw.githubusercontent.com\", not \"github.com\"."
msgstr ""
msgid "Recommendations"
msgstr ""
msgid ""
"These things are not required for your asset to be approved, but if you "
"follow these recommendations, you can help make the asset library a better "
"place for all users."
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"If your asset is a library for working with other files, consider including "
"**example files** in the asset."
msgstr ""
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 ""
#, fuzzy
msgid "Projects / Templates"
msgstr "Projektin tiedostot"
msgid "Addons / Asset Packs"
msgstr ""
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 ""
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 ""
msgid "Submitting"
msgstr ""
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 ""
msgid "|image0|"
msgstr "|image0|"
#, fuzzy
msgid "image0"
msgstr "|image0|"
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 ""
msgid "**Asset Name**:"
msgstr ""
msgid ""
"The name of your asset. Should be a unique, descriptive title of what your "
"asset is."
msgstr ""
msgid "**Category**:"
msgstr ""
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 ""
msgid "**Godot version**:"
msgstr ""
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 ""
msgid "**Version**:"
msgstr ""
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 ""
msgid "**Repository host**:"
msgstr ""
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 ""
msgid "**Repository URL**:"
msgstr ""
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 ""
msgid "**Issues URL**:"
msgstr ""
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 ""
msgid "**Download Commit**:"
msgstr ""
msgid ""
"The commit of the asset. For example, "
"`b1d3172f89b86e52465a74f63a74ac84c491d3e1`. The site computes the actual "
"download URL from this."
msgstr ""
msgid "**Icon URL**:"
msgstr ""
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 ""
msgid ""
"The **icon** must be square (1:1 aspect ratio). It should have a minimum "
"resolution of 128×128 pixels."
msgstr ""
msgid "**License**:"
msgstr ""
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 ""
msgid "**Description**:"
msgstr ""
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 ""
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 ""
msgid "**Type**:"
msgstr ""
msgid "Either an image, or a video."
msgstr ""
msgid "**Image/YouTube URL**:"
msgstr ""
msgid "Either a link to the image, or to a video, hosted on YouTube."
msgstr ""
msgid "**Thumbnail URL**:"
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,365 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Using the Asset Library"
msgstr "Asset-kirjasto"
msgid "On the website"
msgstr ""
msgid "Overview"
msgstr "Yleiskatsaus"
msgid ""
"As mentioned before, you can access the web frontend of the Asset Library on "
"`Godot's official website <https://godotengine.org/asset-library/asset>`_. "
"This is what it looks like when you first visit it:"
msgstr ""
msgid "|image0|"
msgstr "|image0|"
#, fuzzy
msgid "image0"
msgstr "|image0|"
msgid ""
"At the top, you see the **header**, which takes you to various other parts "
"of the AssetLib - at the moment, it's empty, as we are not logged in."
msgstr ""
msgid "Searching"
msgstr ""
msgid ""
"In the center is the **search bar + settings** section, and the **assets** "
"section below it - this lets you filter out certain kinds of assets based on "
"a host of criteria. These include the asset **category** (such as 2D tools, "
"scripts and demos), **engine version** they are intended for, **sorting "
"order** (by update date, by name, etc.) and **support level**."
msgstr ""
msgid ""
"While most other filter settings should be fairly self-explanatory, it's "
"worth going over what \"support level\" means in the Asset Library. "
"Currently there are three support levels, and each asset can belong to only "
"one."
msgstr ""
msgid ""
"**Official** assets are created and maintained by the official Godot Engine "
"developers. Currently, these include the official engine demos, which "
"showcase how various areas of the engine work."
msgstr ""
msgid ""
"**Community** assets are submitted and maintained by the members of the "
"Godot community."
msgstr ""
msgid ""
"**Testing** assets are works-in-progress, and may contain bugs and usability "
"issues. They are not recommended for use in serious projects, but you are "
"encouraged to download, test them, and submit issues to the original authors."
msgstr ""
msgid ""
"You can mix and match any of the search filters and criteria, and upon "
"clicking the Search button, receive the list of all assets in the Library "
"that match them."
msgstr ""
msgid "|image1|"
msgstr "|image1|"
#, fuzzy
msgid "image1"
msgstr "|image1|"
msgid ""
"Note that the search results are not updated in real-time, so you will have "
"to re-submit the search query each time you change the query settings."
msgstr ""
msgid "Breakdown of an asset"
msgstr ""
msgid ""
"Now let's take a look at what an asset's page looks like and what it "
"contains."
msgstr ""
msgid "|image2|"
msgstr "|image2|"
#, fuzzy
msgid "image2"
msgstr "|image2|"
msgid "Asset's thumbnail/icon."
msgstr ""
msgid "Asset's name."
msgstr ""
msgid "Current version number of the asset."
msgstr ""
msgid "Asset's category, Godot version, and support status."
msgstr ""
msgid "Asset's original author/submitter."
msgstr ""
msgid "The license the asset is distributed under."
msgstr ""
msgid "The date of the asset's latest edit/update."
msgstr ""
msgid "A textual description of the asset."
msgstr ""
msgid "Links related to the asset (download link, file list, issue tracker)."
msgstr ""
msgid "Images and videos showcasing the asset."
msgstr ""
msgid "Registering and logging in"
msgstr ""
msgid ""
"In order to upload assets to the AssetLib, you need to be logged in, and to "
"do that, you need a registered user account. In the future, this may also "
"give you access to other features, such as commenting on or rating the "
"existing assets. You do *not* need to be logged in to browse and download "
"the assets."
msgstr ""
msgid "The login/registration page can be accessed from the AssetLib header."
msgstr ""
msgid "|image3|"
msgstr "|image3|"
#, fuzzy
msgid "image3"
msgstr "|image3|"
msgid ""
"From here, you can register your account, which requires a valid email "
"address, a username, and a (preferably strong) password."
msgstr ""
msgid "|image4|"
msgstr "|image4|"
#, fuzzy
msgid "image4"
msgstr "|image4|"
msgid "Then, you can use your username and password to log in."
msgstr ""
msgid "|image5|"
msgstr "|image5|"
#, fuzzy
msgid "image5"
msgstr "|image5|"
msgid ""
"This will change the look of the AssetLib header. Now you get access to a "
"handful of new functions:"
msgstr ""
msgid ""
"The feed, which shows a list of status updates on your submitted assets (and "
"possibly more in the future)."
msgstr ""
msgid "A list of your uploaded assets."
msgstr ""
msgid "The ability to submit new assets."
msgstr ""
msgid "|image6|"
msgstr ""
#, fuzzy
msgid "image6"
msgstr "|image1|"
msgid ""
"You can learn how to submit assets to the Library, and what the asset "
"submission guidelines are, in the next part of this tutorial, :ref:"
"`doc_submitting_to_assetlib`."
msgstr ""
msgid "In the editor"
msgstr ""
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 ""
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 ""
msgid ""
"The editor's **AssetLib** tab will only display assets that are *not* "
"standalone projects by themselves. In other words, it will display assets "
"from all categories except *Templates*, *Demos* and *Projects*."
msgstr ""
msgid "You can also access the AssetLib directly from Godot:"
msgstr ""
msgid "|image7|"
msgstr "|image7|"
#, fuzzy
msgid "image7"
msgstr "|image7|"
msgid "|image14|"
msgstr "|image14|"
#, fuzzy
msgid "image14"
msgstr "|image14|"
msgid ""
"Click on it, and Godot will fetch info about the assets from the AssetLib. "
"Once it's finished, you will see a window similar to what the AssetLib "
"website looks like, with some differences:"
msgstr ""
msgid "|image8|"
msgstr "|image8|"
#, fuzzy
msgid "image8"
msgstr "|image8|"
msgid ""
"Similarly to the web version of the AssetLib, here you can search for assets "
"by category, name, and sort them by factors such as name or edit date."
msgstr ""
msgid ""
"Notably, you can only fetch assets for the current version of Godot you are "
"running. Projects, Demos and Templates can be downloaded from the Project "
"Manager view of the AssetLib. Addons (tools, scripts, materials etc.) can be "
"downloaded from the in-project AssetLib and added to the current project. In "
"addition, unlike when using the web frontend, the search results are updated "
"in real-time (you do not have to press Search after every change to your "
"search query for the changes to take place)."
msgstr ""
msgid ""
"In the future, you will be able to choose a different AssetLib provider to "
"fetch assets from (using the Site dropdown menu), however currently only the "
"official `Godot website <https://godotengine.org>`_ version of the AssetLib "
"is supported, as well as the version that may be running on your local "
"machine's web server (the localhost option)."
msgstr ""
msgid "When you click on an asset, you will see more information about it."
msgstr ""
msgid "|image9|"
msgstr "|image9|"
#, fuzzy
msgid "image9"
msgstr "|image9|"
msgid ""
"If you click on the Install button, Godot will fetch an archive of the "
"asset, and will track download progress of it at the bottom of the editor "
"window. If the download fails, you can retry it using the Retry button."
msgstr ""
msgid "|image10|"
msgstr "|image10|"
#, fuzzy
msgid "image10"
msgstr "|image10|"
msgid ""
"When it finishes, you can proceed to install it using the Install button. "
"This will bring up the Package Installer window."
msgstr ""
msgid "|image11|"
msgstr "|image11|"
#, fuzzy
msgid "image11"
msgstr "|image11|"
msgid ""
"Here you can see a list of all the files that will be installed. You can "
"tick off any of the files that you do not wish to install, and Godot will "
"also inform you about any problems with files that it cannot install. These "
"files will be shown in red, and hovering over them will show you a message "
"stating why it cannot be installed."
msgstr ""
msgid "|image12|"
msgstr "|image12|"
#, fuzzy
msgid "image12"
msgstr "|image12|"
msgid ""
"Once you are done, you can press the Install button, which will unzip all "
"the files in the archive, and import any assets contained therein, such as "
"images or 3D models. Once this is done, you should see a message stating "
"that the Package installation is complete."
msgstr ""
msgid "|image13|"
msgstr "|image13|"
#, fuzzy
msgid "image13"
msgstr "|image13|"
msgid ""
"You may also use the Import button to import asset archives obtained "
"elsewhere (such as downloading them directly from the AssetLib web "
"frontend), which will take you through the same package installation "
"procedure as with the assets downloaded directly via Godot that we just "
"covered."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,93 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "About the Asset Library"
msgstr ""
msgid ""
"The Godot Asset Library, otherwise known as the AssetLib, is a repository of "
"user-submitted Godot addons, scripts, tools, and other resources, "
"collectively referred to as assets. They're available to all Godot users for "
"download directly from within the engine, but it can also be accessed at "
"Godot's `official website <https://godotengine.org/asset-library/asset>`_."
msgstr ""
msgid ""
"On the surface, the Asset Library might look and function similar to asset "
"stores available for other engines, such as Unity's Asset Store, or Unreal "
"Engine's Marketplace, where you can submit both freely-available assets, as "
"well as paid, commercial ones. In addition, often times such assets are "
"distributed under non-free, proprietary licenses, limiting what you can do "
"with them."
msgstr ""
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 ""
msgid ""
"This set of pages will cover how to use the AssetLib (both from inside "
"Godot, and on the website), how you can submit your own assets, and what the "
"guidelines for submission are."
msgstr ""
msgid ""
"Please note that the AssetLib is relatively young - it may have various pain "
"points, bugs, and usability issues. As with all Godot projects, the code "
"repository is available on `GitHub <https://github.com/godotengine/godot-"
"asset-library>`_, where you can submit pull requests and issues, so please "
"do not hesitate to visit it!"
msgstr ""
msgid "Types of assets"
msgstr ""
msgid ""
"Be aware that there are, broadly, two different types of assets you can post."
msgstr ""
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 ""
msgid ""
"Other assets show up inside of the Godot editor under the \"AssetLib\" main "
"screen tab, next to \"2D\", \"3D\", and \"Script\". These assets are meant "
"to be downloaded and placed into an existing Godot project."
msgstr ""
msgid "Frequently asked questions"
msgstr "Usein kysytyt kysymykset"
msgid "Can paid assets be uploaded to the asset library?"
msgstr ""
msgid ""
"Not to the official one, though in the future, there might be other asset "
"libraries which allow it. That said, you are allowed to monetize and sell "
"Godot assets outside the Asset Library."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,121 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Community channels"
msgstr "Yhteisökanavat"
msgid ""
"So, where is the Godot community and where can you ask questions and get "
"help?"
msgstr ""
msgid ""
"Note that some of these channels are run and moderated by members of the "
"Godot community or third parties."
msgstr ""
msgid ""
"A brief overview over these and other channels is also available on the "
"`Godot website <https://godotengine.org/community>`_."
msgstr ""
"Lyhyt yhteenveto näistä ja muista kanavista on saatavilla myös `Godotin "
"verkkosivustolla <https://godotengine.org/community>`_."
msgid "Q&A"
msgstr "Kysymykset ja vastaukset"
msgid "`Official Godot Questions & Answers <https://godotengine.org/qa/>`_"
msgstr ""
msgid "Rocket.Chat"
msgstr ""
#, fuzzy
msgid "`Godot Contributors Chat <https://chat.godotengine.org/>`_"
msgstr ""
"Jos käytät Blenderiä, vilkaise omaa `Better Collada Exporter <https://"
"godotengine.org/download>`_ vientityökaluamme."
msgid "IRC on Libera.Chat"
msgstr ""
msgid ""
"As of January 2021, core developer chat has moved to the Godot Contributors "
"Chat platform listed above."
msgstr ""
msgid ""
"`General: #godotengine <https://web.libera.chat/?channels=#godotengine>`_"
msgstr ""
msgid ""
"IRC is less active than Discord. Please stick around to get an answer, as it "
"may take several hours for someone to see and answer your questions."
msgstr ""
msgid "Other chats"
msgstr ""
msgid "`Discord <https://discord.gg/4JBkykG>`_"
msgstr ""
msgid ""
"`Matrix (IRC compatible) <https://matrix.to/#/#godotengine:matrix.org>`_"
msgstr ""
#, fuzzy
msgid "Language-based communities"
msgstr "Valtava yhteisö"
msgid ""
"See the `User groups <https://godotengine.org/community/user-groups>`_ page "
"of the website for a list of local communities."
msgstr ""
msgid "Social networks"
msgstr ""
msgid "`GitHub <https://github.com/godotengine/>`_"
msgstr ""
msgid "`Facebook group <https://www.facebook.com/groups/godotengine/>`_"
msgstr ""
msgid ""
"`Twitter <https://twitter.com/godotengine>`_ (see also the `#GodotEngine "
"<https://twitter.com/hashtag/GodotEngine>`_ hashtag)"
msgstr ""
msgid "`Reddit <https://www.reddit.com/r/godot>`_"
msgstr ""
msgid "`YouTube <https://www.youtube.com/c/GodotEngineOfficial>`_"
msgstr ""
msgid "`Steam <https://steamcommunity.com/app/404790>`_"
msgstr ""
msgid "Forum"
msgstr ""
msgid "`Godot Forums <https://godotforums.org/>`_"
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,240 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Tutorials and resources"
msgstr "Oppaat ja resurssit"
msgid ""
"This is a list of third-party tutorials and resources created by the Godot "
"community. For resources, remember that there is the official `Godot Asset "
"Library <https://godotengine.org/asset-library/asset>`_ full of official and "
"community resources too! Also, have a look at this `huge list over at Reddit "
"<https://www.reddit.com/r/godot/comments/an0iq5/"
"godot_tutorials_list_of_video_and_written/>`_."
msgstr ""
msgid ""
"Think there is something missing here? Feel free to submit a `Pull Request "
"<https://github.com/godotengine/godot-docs/blob/master/community/tutorials."
"rst>`_ as always."
msgstr ""
msgid "Where to start"
msgstr ""
msgid ""
"The Godot video tutorials by `GDQuest <https://www.youtube.com/channel/"
"UCxboW7x0jZqFdvMdCFKTMsQ/playlists>`_, `Game from Scratch <https://www."
"youtube.com/watch?v=iDEcP8Mc-7s&list=PLS9MbmO_ssyDk79j9ewONxV88fD5e_o5d>`_ "
"and `KidsCanCode <https://www.youtube.com/channel/UCNaPQ5uLX5iIEHUCLmfAgKg/"
"playlists>`_ are well-regarded in the community and often recommended as a "
"gentle introduction to beginners."
msgstr ""
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 ""
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 ""
msgid ""
"Some tutorials mentioned below provide more advanced tutorials, e.g. on 3D "
"or shaders."
msgstr ""
msgid "Video tutorials"
msgstr ""
msgid ""
"`Godot Tutorials <https://www.youtube.com/channel/"
"UCnr9ojBEQGgwbcKsZC-2rIg>`_ (2D, GDScript, Programming Basics)."
msgstr ""
msgid ""
"`Emilio <https://www.youtube.com/channel/UC9DR22-qohBDtZ74R3FxOZg>`_ (2D, "
"GDScript)."
msgstr ""
msgid ""
"`FinePointCGI <https://www.youtube.com/channel/UCSojAWUnEUTUcdA9iJ6bryQ>`_ "
"(2D, 3D, GDScript and C#)."
msgstr ""
msgid ""
"`GDQuest <https://www.youtube.com/channel/UCxboW7x0jZqFdvMdCFKTMsQ/"
"playlists>`_ (2D and 3D, GDScript and C#)."
msgstr ""
msgid ""
"`Game Development Center <https://www.youtube.com/c/GameDevelopmentCenter>`_ "
"(2D, networked multiplayer, GDScript)."
msgstr ""
msgid ""
"`Game Endeavor <https://www.youtube.com/channel/UCLweX1UtQjRjj7rs_0XQ2Eg/"
"videos>`_ (2D, GDScript)."
msgstr ""
msgid ""
"`Game from Scratch <https://www.youtube.com/watch?"
"v=iDEcP8Mc-7s&list=PLS9MbmO_ssyDk79j9ewONxV88fD5e_o5d>`_ (2D and 3D, "
"GDScript and C#)."
msgstr ""
msgid ""
"`HeartBeast <https://www.youtube.com/watch?v=wETY5_9kFtA&list=PL9FzW-"
"m48fn2jlBu_0DRh7PvAt-GULEmd>`_ (2D, GDScript)."
msgstr ""
msgid ""
"`KidsCanCode <https://www.youtube.com/channel/UCNaPQ5uLX5iIEHUCLmfAgKg/"
"playlists>`__ (2D and 3D, GDScript)."
msgstr ""
msgid ""
"`Mister Taft Creates <https://www.youtube.com/playlist?"
"list=PL4vbr3u7UKWqwQlvwvgNcgDL1p_3hcNn2>`_ (2D, GDScript)."
msgstr ""
msgid ""
"`Miziziziz <https://www.youtube.com/playlist?"
"list=PLmugv6_kd0qNyt0WHVnac1f5IFzG-7grN>`_ (2D and 3D, GDScript)."
msgstr ""
msgid ""
"`P1X / Krzysztof Jankowski <https://www.youtube.com/playlist?"
"list=PLvDk7UKhld4xGPovdB4IFtAHYMYjx_-3K>`_ (3D)."
msgstr ""
msgid ""
"`Pigdev <https://www.youtube.com/playlist?"
"list=PLPMN4vCRFdordS3E-3zi0Hdh7pAsbWQ6a>`_ (2D, GDScript)."
msgstr ""
msgid ""
"`Steincodes <https://www.youtube.com/c/steincodes/playlists>`__ (2D, "
"GDScript)."
msgstr ""
msgid ""
"`TheBuffED <https://www.youtube.com/watch?"
"v=ygGaN1EOQEA&list=PLvN5Z3tTxXEDfQkt4Frg6ALirespSwZd7>`_ (2D, GDScript)."
msgstr ""
msgid ""
"`Code with Tom <https://www.youtube.com/playlist?"
"list=PLiUQR4U_J9ec0k91iHPme_qtfS1nrWF3W>`_ (2D and 3D, GDScript)."
msgstr ""
msgid ""
"`BornCG <https://www.youtube.com/playlist?"
"list=PLda3VoSoc_TSBBOBYwcmlamF1UrjVtccZ>`_ (2D and 3D, GDScript)."
msgstr ""
msgid ""
"`TheGuideKnight <https://www.youtube.com/playlist?"
"list=PLYcTJBw32KtX2fvOdtO_fS3Nd6sxM71tn>`_ (2D, GDScript)."
msgstr ""
msgid ""
"`GDScript Dude <https://www.youtube.com/channel/UCQs0i6vKISElM6mh7OzLouQ>`_ "
"(GDScript)."
msgstr ""
msgid "`Garbaj <https://www.youtube.com/c/Garbaj/>`_ (3D, GDScript)."
msgstr ""
msgid ""
"`Kasper Frandsen <https://www.youtube.com/c/KasperFrandsen/>`_ (3D, Shaders)."
msgstr ""
msgid ""
"`bitbrain <https://www.youtube.com/watch?v=lFIBn8kJ-"
"IM&list=PL4AhUX6lGjJWfiDORSmEu8x_myelbe1p2>`_ (2D, GDScript)."
msgstr ""
msgid "`Gwizz <https://www.youtube.com/@Gwizz1027>`_ (2D, GDScript)."
msgstr ""
msgid "`Quiver <https://quiver.dev/>`_ (2D, GDScript)."
msgstr ""
msgid ""
"`Maker Tech <https://www.youtube.com/watch?v=0mUoRdYe0s4>`_ (2D, GDScript)."
msgstr ""
msgid "Text tutorials"
msgstr "Tekstioppaat"
msgid "`FinepointCGI website by Mitch <https://finepointcgi.io/>`__"
msgstr ""
msgid "`GDScript website by Andrew Wilkes <https://gdscript.com>`__"
msgstr ""
msgid ""
"`Godot Recipes by KidsCanCode <https://kidscancode.org/godot_recipes/4.x/>`__"
msgstr ""
msgid ""
"`Godot Tutorials by SomethingLikeGames <https://www.somethinglikegames.de/en/"
"tags/godot-engine/>`__"
msgstr ""
msgid "Devlogs"
msgstr ""
msgid ""
"`Andrea Catania (Physics & AI) <https://www.youtube.com/channel/"
"UCm4RuvYtgpgFDTCgaEUT5uQ/videos>`_"
msgstr ""
msgid ""
"`Bastiaan Olij (AR & VR) <https://www.youtube.com/channel/UCrbLJYzJjDf2p-"
"vJC011lYw/videos>`_"
msgstr ""
msgid "`DevDuck (2D) <https://www.youtube.com/@devduck/videos>`_"
msgstr ""
msgid "Resources"
msgstr "Resurssit"
msgid ""
"`awesome-godot: A curated list of free/libre plugins, scripts and add-ons "
"<https://github.com/godotengine/awesome-godot>`_"
msgstr ""
msgid ""
"`Zeef Godot Engine: A curated directory of resources by Andre Schmitz "
"<https://godot-engine.zeef.com/andre.antonio.schmitz>`_"
msgstr ""
"`Zeef Godot Engine: Kuratoitu hakemisto resursseja Andre Schmitziltä "
"<https://godot-engine.zeef.com/andre.antonio.schmitz>`_"
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,332 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Best practices for engine contributors"
msgstr ""
msgid "Introduction"
msgstr "Johdanto"
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 ""
msgid "Language"
msgstr "Kieli"
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 ""
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 ""
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 ""
msgid "Best Practices"
msgstr "Parhaat käytännöt"
msgid "#1: The problem always comes first"
msgstr ""
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 ""
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 ""
msgid "#2: To solve the problem, it has to exist in the first place"
msgstr ""
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 ""
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 ""
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 ""
msgid "I think it would be useful for users to..."
msgstr ""
msgid "I think users will eventually need to..."
msgstr ""
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 ""
msgid "#3: The problem has to be complex or frequent"
msgstr ""
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 ""
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 ""
msgid "The complexity of the problem"
msgstr "Ongelman monimutkaisuus"
msgid "The frequency the problem"
msgstr ""
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 ""
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 ""
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 ""
msgid "#4: The solution must be discussed with others"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "#5: To each problem, its own solution"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "#6: Cater to common use cases, leave the door open for the rare ones"
msgstr ""
msgid ""
"This is a continuation of the previous point, which further explains why "
"this way of thinking and designing software is preferred."
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "#7: Prefer local solutions"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "#8: Don't use complex canned solutions for simple problems"
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,382 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Code style guidelines"
msgstr ""
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 ""
msgid "C++ and Objective-C"
msgstr ""
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 ""
msgid ""
"Indentation and alignment are both tab based (respectively one and two tabs)"
msgstr ""
msgid "One space around math and assignments operators as well as after commas"
msgstr ""
msgid ""
"Pointer and reference operators are affixed to the variable identifier, not "
"to the type name"
msgstr ""
msgid "See further down regarding header includes"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Using clang-format locally"
msgstr ""
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 ""
msgid "Installation"
msgstr ""
msgid "Here's how to install clang-format:"
msgstr ""
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 ""
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 ""
msgid ""
"You then have different possibilities to apply clang-format to your changes:"
msgstr ""
msgid "Manual usage"
msgstr ""
msgid ""
"You can apply clang-format manually one or more files with the following "
"command:"
msgstr ""
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 ""
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 ""
msgid "Pre-commit hook"
msgstr ""
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 ""
msgid ""
"This \"hook\" is a script which can be found in ``misc/hooks``, refer to "
"that folder's README.md for installation instructions."
msgstr ""
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 ""
msgid "IDE plugin"
msgstr ""
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 ""
msgid "Here is a non-exhaustive list of beautifier plugins for some IDEs:"
msgstr ""
msgid ""
"Qt Creator: `Beautifier plugin <https://doc.qt.io/qtcreator/creator-"
"beautifier.html>`__"
msgstr ""
msgid ""
"Visual Studio Code: `Clang-Format <https://marketplace.visualstudio.com/"
"items?itemName=xaver.clang-format>`__"
msgstr ""
msgid ""
"Visual Studio: `ClangFormat <https://marketplace.visualstudio.com/items?"
"itemName=LLVMExtensions.ClangFormat>`__"
msgstr ""
msgid "vim: `vim-clang-format <https://github.com/rhysd/vim-clang-format>`__"
msgstr ""
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 ""
msgid "(Pull requests welcome to extend this list with tested plugins.)"
msgstr ""
msgid "Header includes"
msgstr ""
msgid ""
"When adding new C++ or Objective-C files or including new headers in "
"existing ones, the following rules should be followed:"
msgstr ""
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 ""
msgid ""
"In a ``.h`` header, include guards should be used with the form "
"``FILENAME_H``."
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid "Example:"
msgstr ""
msgid "Java"
msgstr ""
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 ""
msgid "Python"
msgstr ""
msgid ""
"Godot's SCons buildsystem is written in Python, and various scripts included "
"in the source tree are also using Python."
msgstr ""
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 ""
msgid "Using black locally"
msgstr ""
msgid ""
"First of all, you will need to install Black. Black requires Python 3.7+ to "
"run."
msgstr ""
msgid "Here's how to install black:"
msgstr ""
msgid "You then have different possibilities to apply black to your changes:"
msgstr ""
msgid ""
"You can apply ``black`` manually to one or more files with the following "
"command:"
msgstr ""
msgid ""
"``-l 120`` means that the allowed number of characters per line is 120. This "
"number was agreed upon by the developers."
msgstr ""
msgid ""
"The path can point to several files, either one after the other or using "
"wildcards like in a typical Unix shell."
msgstr ""
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 ""
msgid ""
"This \"hook\" is a script which can be found in ``misc/hooks``. Refer to "
"that folder's ``README.md`` for installation instructions."
msgstr ""
#, fuzzy
msgid "Editor integration"
msgstr "Vektorin interpolointi"
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 ""
#, fuzzy
msgid "Comment style guide"
msgstr "Editorin ikonit"
msgid ""
"This comment style guide applies to all programming languages used within "
"Godot's codebase."
msgstr ""
msgid ""
"Begin comments with a space character to distinguish them from disabled code."
msgstr ""
msgid ""
"Use sentence case for comments. Begin comments with an uppercase character "
"and always end them with a period."
msgstr ""
msgid "Reference variable/function names and values using backticks."
msgstr ""
msgid "Wrap comments to ~100 characters."
msgstr ""
msgid ""
"You can use ``TODO:``, ``FIXME:``, ``NOTE:``, or ``HACK:`` as admonitions "
"when needed."
msgstr ""
msgid "**Example:**"
msgstr ""
msgid ""
"Don't repeat what the code says in a comment. Explain the *why* rather than "
"*how*."
msgstr ""
msgid "**Bad:**"
msgstr ""
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 ""
msgid ""
"For member variables, don't use Javadoc-style comments but use single-line "
"comments instead:"
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,338 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Compiling for Android"
msgstr ""
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 ""
msgid "Note"
msgstr ""
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 ""
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 ""
msgid "Requirements"
msgstr ""
msgid "For compiling under Windows, Linux or macOS, the following is required:"
msgstr ""
msgid "`Python 3.6+ <https://www.python.org/downloads/>`_."
msgstr ""
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`_ build system."
msgstr ""
msgid ""
"`Android SDK <https://developer.android.com/studio/#command-tools>`_ "
"(command-line tools are sufficient)."
msgstr ""
"`Android SDK <https://developer.android.com/studio/#command-tools>`_ "
"(komentorivityökalut ovat riittävät)."
msgid "Required SDK components will be automatically installed."
msgstr ""
#, fuzzy
msgid "On Linux,"
msgstr "**Työpöytä:** Windows, macOS, Linux"
msgid ""
"**do not use an Android SDK provided by your distribution's repositories as "
"it will often be outdated**."
msgstr ""
msgid "Gradle (will be downloaded and installed automatically if missing)."
msgstr ""
msgid "JDK 11 (either OpenJDK or Oracle JDK)."
msgstr ""
msgid ""
"You can download a build from `ojdkbuild <https://github.com/ojdkbuild/"
"ojdkbuild>`_."
msgstr ""
msgid ""
"To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
msgid ""
"For a general overview of SCons usage for Godot, see :ref:"
"`doc_introduction_to_the_buildsystem`."
msgstr ""
msgid "Setting up the buildsystem"
msgstr ""
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 ""
msgid "Install the necessary SDK components in this folder:"
msgstr ""
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 ""
msgid ""
"Complete setup by running the following command where ``android_sdk_path`` "
"is the path to the Android SDK."
msgstr ""
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 ""
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 ""
msgid "Building the export templates"
msgstr ""
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 ""
msgid ""
"Compiling the standard export templates is done by calling SCons from the "
"Godot root directory with the following arguments:"
msgstr ""
msgid ""
"Release template (used when exporting with **Debugging Enabled** unchecked)"
msgstr ""
msgid "The resulting APK will be located at ``bin/android_release.apk``."
msgstr ""
msgid "Debug template (used when exporting with **Debugging Enabled** checked)"
msgstr ""
msgid "The resulting APK will be located at ``bin/android_debug.apk``."
msgstr ""
msgid ""
"If you want to enable Vulkan validation layers, see :ref:`Vulkan validation "
"layers on Android <doc_vulkan_validation_layers_android>`."
msgstr ""
msgid "Adding support for x86 devices"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Cleaning the generated export templates"
msgstr "PO-pohjan luonti"
msgid ""
"You can use the following commands to remove the generated export templates:"
msgstr ""
msgid "Using the export templates"
msgstr ""
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 ""
msgid ""
"When exporting your game, Godot opens the APK, changes a few things inside "
"and adds your files."
msgstr ""
msgid "Installing the templates"
msgstr ""
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 ""
msgid "Windows: ``%APPDATA%\\Godot\\export_templates\\<version>\\``"
msgstr ""
msgid "Linux: ``$HOME/.local/share/godot/export_templates/<version>/``"
msgstr ""
msgid ""
"macOS: ``$HOME/Library/Application Support/Godot/export_templates/<version>/"
"``"
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Building the Godot editor"
msgstr "Sisäänrakennettu teemaeditori."
msgid ""
"Compiling the editor is done by calling SCons from the Godot root directory "
"with the following arguments:"
msgstr ""
msgid "The resulting APK will be located at ``bin/android_editor.apk``."
msgstr ""
#, fuzzy
msgid "Removing the Editor templates"
msgstr "Pelaajan liikuttaminen"
#, fuzzy
msgid ""
"You can use the following commands to remove the generated editor templates:"
msgstr "Lisää sitten seuraavat kaksi funktiota:"
#, fuzzy
msgid "Installing the Godot editor"
msgstr "Sisäänrakennettu teemaeditori."
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 ""
msgid "Troubleshooting"
msgstr "Ongelmien ratkonta"
msgid "Platform doesn't appear in SCons"
msgstr ""
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 ""
msgid "Application not installed"
msgstr ""
msgid ""
"Android might complain the application is not correctly installed. If so:"
msgstr ""
msgid "Check that the debug keystore is properly generated."
msgstr ""
msgid "Check that the jarsigner executable is from JDK 8."
msgstr ""
msgid ""
"If it still fails, open a command line and run `logcat <https://developer."
"android.com/studio/command-line/logcat>`_:"
msgstr ""
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 ""
msgid "Application exits immediately"
msgstr ""
msgid ""
"If the application runs but exits immediately, this might be due to one of "
"the following reasons:"
msgstr ""
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 ""
msgid ""
"``libgodot_android.so`` is not in ``libs/<arch>/`` where ``<arch>`` is the "
"device's architecture."
msgstr ""
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 ""
msgid "In any case, ``adb logcat`` should also show the cause of the error."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Compiling for iOS"
msgstr ""
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 ""
msgid "Requirements"
msgstr ""
msgid "`Python 3.6+ <https://www.python.org/downloads/macos/>`_."
msgstr ""
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`_ build system."
msgstr ""
msgid ""
"`Xcode <https://apps.apple.com/us/app/xcode/id497799835>`_ (or the more "
"lightweight Command Line Tools for Xcode)."
msgstr ""
msgid "If you are building the ``master`` branch:"
msgstr ""
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 ""
msgid ""
"If you have `Homebrew <https://brew.sh/>`_ installed, you can easily install "
"SCons using the following command::"
msgstr ""
msgid ""
"Installing Homebrew will also fetch the Command Line Tools for Xcode "
"automatically if you don't have them already."
msgstr ""
msgid ""
"Similarly, if you have `MacPorts <https://www.macports.org/>`_ installed, "
"you can easily install SCons using the following command::"
msgstr ""
msgid ""
"To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
msgid ""
"For a general overview of SCons usage for Godot, see :ref:"
"`doc_introduction_to_the_buildsystem`."
msgstr ""
msgid "Compiling"
msgstr "Kääntäminen"
msgid "Open a Terminal, go to the root dir of the engine source code and type:"
msgstr ""
msgid "for a debug build, or:"
msgstr ""
msgid ""
"for a release build (check ``platform/ios/detect.py`` for the compiler flags "
"used for each configuration)."
msgstr ""
msgid "Alternatively, you can run"
msgstr ""
msgid "for a Simulator libraries."
msgstr ""
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 ""
msgid ""
"The MoltenVK static ``.xcframework`` folder must also be placed in the "
"``ios_xcode`` folder once it has been created."
msgstr ""
msgid "Run"
msgstr "Suorita"
msgid ""
"To run on a device or simulator, follow these instructions: :ref:"
"`doc_exporting_for_ios`."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,432 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Compiling for Linux, \\*BSD"
msgstr "Viedään Androidille"
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 ""
msgid "Requirements"
msgstr ""
msgid ""
"For compiling under Linux or other Unix variants, the following is required:"
msgstr ""
msgid "GCC 7+ or Clang 6+."
msgstr ""
msgid "`Python 3.6+ <https://www.python.org/downloads/>`_."
msgstr ""
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`_ build system."
msgstr ""
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 ""
msgid "pkg-config (used to detect the development libraries listed below)."
msgstr ""
#, fuzzy
msgid "Development libraries:"
msgstr "Kehitys"
msgid "X11, Xcursor, Xinerama, Xi and XRandR."
msgstr ""
msgid "MesaGL."
msgstr ""
msgid "ALSA."
msgstr ""
#, fuzzy
msgid "PulseAudio."
msgstr "Äänet"
msgid "*Optional* - libudev (build with ``udev=yes``)."
msgstr ""
msgid ""
"To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
msgid ""
"For a general overview of SCons usage for Godot, see :ref:"
"`doc_introduction_to_the_buildsystem`."
msgstr ""
msgid "Distro-specific one-liners"
msgstr ""
#, fuzzy
msgid "Alpine Linux"
msgstr "**Työpöytä:** Windows, macOS, Linux"
msgid "Arch Linux"
msgstr ""
msgid "Debian/Ubuntu"
msgstr ""
msgid "Fedora"
msgstr ""
msgid "FreeBSD"
msgstr ""
msgid "Gentoo"
msgstr ""
msgid "Mageia"
msgstr ""
msgid "OpenBSD"
msgstr ""
msgid "openSUSE"
msgstr ""
msgid "NetBSD"
msgstr ""
msgid "For audio support, you can optionally install ``pulseaudio``."
msgstr ""
msgid "Solus"
msgstr ""
msgid "Compiling"
msgstr "Kääntäminen"
msgid ""
"Start a terminal, go to the root dir of the engine source code and type:"
msgstr ""
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 ""
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 ""
msgid "If you wish to compile using Clang rather than GCC, use this command:"
msgstr ""
msgid ""
"Using Clang appears to be a requirement for OpenBSD, otherwise fonts would "
"not build."
msgstr ""
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 ""
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 ""
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 ""
msgid "Running a headless/server build"
msgstr ""
msgid ""
"To run in *headless* mode which provides editor functionality to export "
"projects in an automated manner, use the normal build::"
msgstr ""
msgid "And then use the ``--headless`` command line argument::"
msgstr ""
msgid ""
"To compile a debug *server* build which can be used with :ref:`remote "
"debugging tools <doc_command_line_tutorial>`, use::"
msgstr ""
msgid ""
"To compile a *server* build which is optimized to run dedicated game "
"servers, use::"
msgstr ""
msgid "Building export templates"
msgstr ""
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 ""
msgid ""
"To build Linux or \\*BSD export templates, run the build system with the "
"following parameters:"
msgstr ""
msgid "(32 bits)"
msgstr ""
msgid "(64 bits)"
msgstr ""
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 ""
msgid ""
"To create standard export templates, the resulting files in the ``bin/`` "
"folder must be copied to:"
msgstr ""
msgid ""
"and named like this (even for \\*BSD which is seen as \"Linux/X11\" by "
"Godot):"
msgstr ""
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 ""
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 ""
msgid "Using Clang and LLD for faster development"
msgstr ""
msgid ""
"You can also use Clang and LLD to build Godot. This has two upsides compared "
"to the default GCC + GNU ld setup:"
msgstr ""
msgid ""
"LLD links Godot significantly faster compared to GNU ld or gold. This leads "
"to faster iteration times."
msgstr ""
msgid "Clang tends to give more useful error messages compared to GCC."
msgstr ""
msgid ""
"To do so, install Clang and the ``lld`` package from your distribution's "
"package manager then use the following SCons command::"
msgstr ""
msgid ""
"After the build is completed, a new binary with a ``.llvm`` suffix will be "
"created in the ``bin/`` folder."
msgstr ""
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 ""
msgid "If this error occurs::"
msgstr ""
#, fuzzy
msgid "There are two solutions:"
msgstr "On kaksi tapaa tehdä tämä:"
msgid "In your SCons command, add the parameter ``use_static_cpp=no``."
msgstr ""
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 ""
#, fuzzy
msgid "Using mold for faster development"
msgstr "Johdanto vienteihin"
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 ""
msgid ""
"As of January 2023, mold is not readily available in Linux distribution "
"repositories, so you will have to install its binaries manually."
msgstr ""
#, fuzzy
msgid ""
"Download mold binaries from its `releases page <https://github.com/rui314/"
"mold/releases/latest>`__."
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid ""
"Extract the ``.tar.gz`` file, then move the extraced folder to a location "
"such as ``.local/share/mold``."
msgstr ""
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 ""
msgid ""
"Open a new terminal (or run ``source \"$HOME/.bash_profile\"``), then use "
"the following SCons command when compiling Godot::"
msgstr ""
#, fuzzy
msgid "Using system libraries for faster development"
msgstr "Johdanto vienteihin"
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 ""
msgid ""
"However, not all Linux distributions have packages for third-party libraries "
"available (or they may not be up-to-date)."
msgstr ""
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 ""
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 ""
msgid "**Fedora**"
msgstr ""
msgid ""
"After installing all required packages, use the following command to build "
"Godot:"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Using Pyston for faster development"
msgstr "Johdanto vienteihin"
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 ""
msgid ""
"Download the `latest portable Pyston release <https://github.com/pyston/"
"pyston/releases/latest>`__."
msgstr ""
msgid ""
"Extract the portable ``.tar.gz`` to a set location, such as ``$HOME/.local/"
"opt/pyston/`` (create folders as needed)."
msgstr ""
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 ""
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 ""
msgid ""
"Instead of running ``scons <build arguments>``, run ``pyston-scons <build "
"arguments>`` to compile Godot."
msgstr ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,245 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Compiling for macOS"
msgstr ""
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 ""
msgid "Requirements"
msgstr ""
msgid "For compiling under macOS, the following is required:"
msgstr ""
msgid "`Python 3.6+ <https://www.python.org/downloads/macos/>`_."
msgstr ""
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`_ build system."
msgstr ""
msgid ""
"`Xcode <https://apps.apple.com/us/app/xcode/id497799835>`_ (or the more "
"lightweight Command Line Tools for Xcode)."
msgstr ""
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 ""
msgid ""
"If you have `Homebrew <https://brew.sh/>`_ installed, you can easily install "
"SCons using the following command::"
msgstr ""
msgid ""
"Installing Homebrew will also fetch the Command Line Tools for Xcode "
"automatically if you don't have them already."
msgstr ""
msgid ""
"Similarly, if you have `MacPorts <https://www.macports.org/>`_ installed, "
"you can easily install SCons using the following command::"
msgstr ""
msgid ""
"To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
msgid ""
"For a general overview of SCons usage for Godot, see :ref:"
"`doc_introduction_to_the_buildsystem`."
msgstr ""
msgid "Compiling"
msgstr "Kääntäminen"
msgid "Start a terminal, go to the root directory of the engine source code."
msgstr ""
msgid "To compile for Intel (x86-64) powered Macs, use::"
msgstr ""
msgid "To compile for Apple Silicon (ARM64) powered Macs, use::"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Running a headless/server build"
msgstr ""
msgid ""
"To run in *headless* mode which provides editor functionality to export "
"projects in an automated manner, use the normal build::"
msgstr ""
msgid "And then use the ``--headless`` command line argument::"
msgstr ""
msgid ""
"To compile a debug *server* build which can be used with :ref:`remote "
"debugging tools <doc_command_line_tutorial>`, use::"
msgstr ""
msgid ""
"To compile a release *server* build which is optimized to run dedicated game "
"servers, use::"
msgstr ""
msgid "Building export templates"
msgstr ""
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 ""
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 ""
msgid "For Intel x86_64::"
msgstr ""
msgid "For ARM64 (Apple M1)::"
msgstr ""
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 ""
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 ""
msgid ""
"You can then zip the ``macos_template.app`` folder to reproduce the ``macos."
"zip`` template from the official Godot distribution::"
msgstr ""
#, fuzzy
msgid "Using Pyston for faster development"
msgstr "Johdanto vienteihin"
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 ""
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 ""
msgid "Cross-compiling for macOS from Linux"
msgstr ""
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 ""
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 ""
msgid ""
"Follow the instructions to package the SDK: https://github.com/tpoechtrager/"
"osxcross#packaging-the-sdk"
msgstr ""
msgid ""
"Follow the instructions to install OSXCross: https://github.com/tpoechtrager/"
"osxcross#installation"
msgstr ""
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 ""
msgid "Now you can compile with SCons like you normally would::"
msgstr ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,35 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Compiling for Universal Windows Platform"
msgstr ""
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 ""
msgid ""
"We recommend you use the :ref:`Win32 export <doc_exporting_for_windows>` "
"instead."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,161 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Compiling for the Web"
msgstr ""
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 ""
msgid "Requirements"
msgstr ""
msgid "To compile export templates for the Web, the following is required:"
msgstr ""
msgid "`Emscripten 1.39.9+ <https://emscripten.org>`__."
msgstr ""
msgid "`Python 3.6+ <https://www.python.org/>`__."
msgstr ""
msgid "`SCons 3.0+ <https://scons.org/pages/download.html>`__ build system."
msgstr ""
msgid ""
"To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
msgid ""
"For a general overview of SCons usage for Godot, see :ref:"
"`doc_introduction_to_the_buildsystem`."
msgstr ""
msgid "Building export templates"
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"Finally, rename the zip archive to ``web_release.zip`` for the release "
"template::"
msgstr ""
msgid "And ``web_debug.zip`` for the debug template::"
msgstr ""
msgid "GDExtension"
msgstr ""
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 ""
msgid ""
"You can build the export templates using the option ``dlink_enabled=yes`` to "
"enable GDExtension support::"
msgstr ""
msgid ""
"Once finished, the resulting file will be placed in the ``bin`` "
"subdirectory. Its name will have ``_dlink`` added."
msgstr ""
msgid ""
"Finally, rename the zip archives to ``web_dlink_release.zip`` and "
"``web_dlink_release.zip`` for the release template::"
msgstr ""
#, fuzzy
msgid "Building the editor"
msgstr "Sisäänrakennettu teemaeditori."
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 ""
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 ""
msgid ""
"Refer to the :ref:`export page <doc_javascript_export_options>` for the web "
"server requirements."
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,349 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Compiling for Windows"
msgstr ""
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 ""
msgid "Requirements"
msgstr ""
msgid "For compiling under Windows, the following is required:"
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"If you have `Scoop <https://scoop.sh/>`_ installed, you can easily install "
"MinGW and other dependencies using the following command::"
msgstr ""
msgid ""
"If you have `MSYS2 <https://www.msys2.org/>`_ installed, you can easily "
"install MinGW and other dependencies using the following command::"
msgstr ""
msgid ""
"For each MSYS2 MinGW subsystem, you should then run `pip3 install scons` in "
"its shell."
msgstr ""
msgid ""
"To get the Godot source code for compiling, see :ref:`doc_getting_source`."
msgstr ""
msgid ""
"For a general overview of SCons usage for Godot, see :ref:"
"`doc_introduction_to_the_buildsystem`."
msgstr ""
msgid "Setting up SCons"
msgstr ""
#, fuzzy
msgid ""
"To install SCons, open the command prompt and run the following command::"
msgstr "Lisää ``Mob`` solmulle skripti ja lisää seuraavat jäsenmuuttujat:"
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 ""
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 ""
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 ""
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 ""
msgid "Installing Visual Studio caveats"
msgstr ""
msgid ""
"If installing Visual Studio 2017 or 2019, make sure to enable **C++** in the "
"list of workflows to install."
msgstr ""
msgid ""
"If installing Visual Studio 2015, make sure to run a **Custom** installation "
"instead of **Typical** and select **C++** as a language there."
msgstr ""
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 ""
msgid "Downloading Godot's source"
msgstr ""
#, fuzzy
msgid "Refer to :ref:`doc_getting_source` for detailed instructions."
msgstr "Katso :ref:`doc_instancing` oppiaksesi enemmän ilmentymistä."
msgid ""
"The tutorial will assume from now on that you placed the source code in ``C:"
"\\godot``."
msgstr ""
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 ""
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 ""
msgid "Compiling"
msgstr "Kääntäminen"
msgid "Selecting a compiler"
msgstr "Kääntäjän valinta"
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 ""
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 ""
msgid "Running SCons"
msgstr ""
msgid ""
"After opening a command prompt, change to the root directory of the engine "
"source code (using ``cd``) and type::"
msgstr ""
msgid ""
"When compiling with multiple CPU threads, SCons may warn about pywin32 being "
"missing. You can safely ignore this warning."
msgstr ""
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 ""
msgid ""
"This executable file contains the whole engine and runs without any "
"dependencies. Running it will bring up the Project Manager."
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Development in Visual Studio"
msgstr "Kehitys"
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 ""
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 ""
msgid ""
"You can create a Visual Studio solution via SCons by running SCons with the "
"``vsproj=yes`` parameter, like this::"
msgstr ""
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 ""
#, fuzzy
msgid "See :ref:`doc_configuring_an_ide_vs` for further details."
msgstr "Katso :ref:`doc_instancing` oppiaksesi enemmän ilmentymistä."
msgid "Cross-compiling for Windows from other operating systems"
msgstr ""
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 ""
msgid "**Arch Linux**"
msgstr ""
msgid "**Debian** / **Ubuntu**"
msgstr ""
msgid "**Fedora**"
msgstr ""
msgid "**macOS**"
msgstr ""
msgid "**Mageia**"
msgstr ""
msgid ""
"Before attempting the compilation, SCons will check for the following "
"binaries in your ``PATH`` environment variable::"
msgstr ""
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 ""
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 ""
msgid "Troubleshooting"
msgstr "Ongelmien ratkonta"
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 ""
msgid ""
"You can change that configuration following those instructions, for 64-bit::"
msgstr ""
msgid "And for 32-bit::"
msgstr ""
msgid "Creating Windows export templates"
msgstr ""
msgid ""
"Windows export templates are created by compiling Godot without the editor, "
"with the following flags::"
msgstr ""
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 ""
msgid "With the following names::"
msgstr "Seuraavilla nimillä:"
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,242 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Compiling with .NET"
msgstr "Lisenssien hyväksyminen"
msgid "Requirements"
msgstr ""
msgid "`.NET SDK 6.0+ <https://dotnet.microsoft.com/download>`_"
msgstr ""
msgid ""
"You can use ``dotnet --info`` to check which .NET SDK versions are installed."
msgstr ""
msgid "Enable the .NET module"
msgstr ""
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 ""
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 ""
msgid "Generate the glue"
msgstr ""
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 ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Building the managed libraries"
msgstr "Android-liitännäisten luonti"
msgid ""
"Once you have generated the .NET glue, you can build the managed libraries "
"with the ``build_assemblies.py`` script::"
msgstr ""
msgid ""
"If everything went well, the ``GodotSharp`` directory, containing the "
"managed libraries, should have been created in the ``bin`` directory."
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Build Platform"
msgstr "Alustat"
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 ""
msgid ""
"This currently only controls the inclusion of the support for Visual Studio "
"as an external editor, the libraries are otherwise identical."
msgstr ""
msgid "NuGet packages"
msgstr ""
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 ""
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 ""
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 ""
msgid ""
"In order to simplify this process, the ``build_assemblies.py`` script "
"provides the following ``--push-nupkgs-local`` option:"
msgstr ""
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 ""
msgid "Double Precision Support (REAL_T_IS_DOUBLE)"
msgstr ""
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 ""
msgid "Examples"
msgstr ""
msgid "Example (Windows)"
msgstr ""
#, fuzzy
msgid "Example (Linux, \\*BSD)"
msgstr "X11 (Linux, \\*BSD)"
msgid "Data directory"
msgstr ""
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 ""
msgid "Editor"
msgstr "Editori"
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 ""
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 ""
msgid "Export templates"
msgstr "Vientimallit"
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 ""
msgid ""
"In the case of multi-architecture exports multiple such data directories "
"will be generated."
msgstr ""
msgid "Command-line options"
msgstr ""
msgid ""
"The following is the list of command-line options available when building "
"with the .NET module:"
msgstr ""
msgid "**module_mono_enabled**\\ =yes | **no**"
msgstr ""
msgid "Build Godot with the .NET module enabled."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,107 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Compiling with PCK encryption key"
msgstr "Lisenssien hyväksyminen"
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 ""
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 ""
msgid ""
"For this to work, you need to build the export templates from source, with "
"that same key."
msgstr ""
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 ""
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 ""
msgid "Step by step"
msgstr "Kohta kohdalta"
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 ""
msgid ""
"Alternatively, you can generate it yourself using `OpenSSL <https://www."
"openssl.org/>`__ command-line tools:"
msgstr ""
msgid "The output in ``godot.gdkey`` should be similar to:"
msgstr ""
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 ""
msgid ""
"Set this key as environment variable in the console that you will use to "
"compile Godot, like this:"
msgstr ""
msgid ""
"Compile Godot export templates and set them as custom export templates in "
"the export preset options."
msgstr ""
msgid "Set the encryption key in the **Encryption** tab of the export preset:"
msgstr ""
msgid ""
"Add filters for the files/folders to encrypt. **By default**, include "
"filters are empty and **nothing will be encrypted**."
msgstr ""
msgid ""
"Export the project. The project should run with the files encrypted now."
msgstr ""
msgid "Troubleshooting"
msgstr "Ongelmien ratkonta"
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,162 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Cross-compiling for iOS on Linux"
msgstr ""
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 ""
msgid "Disclaimer"
msgstr ""
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 ""
msgid "Requirements"
msgstr ""
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 ""
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 ""
msgid ""
"`Fuse <https://github.com/libfuse/libfuse>`__ for mounting and unmounting "
"the dmg image."
msgstr ""
msgid ""
"`darling-dmg <https://github.com/darlinghq/darling-dmg>`__, which needs to "
"be built from source. The procedure for that is explained below."
msgstr ""
msgid ""
"For newer versions you should download `xar <https://mackyle.github.io/xar/"
">`__ and `pbzx <https://github.com/NiklasRosenstein/pbzx>`__."
msgstr ""
msgid ""
"For building darling-dmg, you'll need the development packages of the "
"following libraries: fuse, icu, openssl, zlib, bzip2."
msgstr ""
msgid ""
"For building xar and pbzx you may want to follow `this guide <https://gist."
"github.com/phracker/1944ce190e01963c550566b749bd2b54>`__."
msgstr ""
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 ""
msgid "This also has some extra dependencies: automake, autogen, libtool."
msgstr ""
msgid "Configuring the environment"
msgstr ""
msgid "darling-dmg"
msgstr ""
msgid "Clone the repository on your machine:"
msgstr ""
msgid "Build it:"
msgstr ""
msgid "Preparing the SDK"
msgstr ""
msgid "Mount the XCode image:"
msgstr ""
msgid "For newer versions you should extract the **xip** file:"
msgstr ""
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 ""
msgid "Extract the iOS SDK:"
msgstr ""
msgid "Pack the SDK:"
msgstr ""
msgid "Toolchain"
msgstr ""
msgid "Build cctools:"
msgstr ""
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 ""
msgid ""
"Now you should have the iOS toolchain binaries in ``/home/user/iostoolchain/"
"usr/bin``."
msgstr ""
msgid "Compiling Godot for iPhone"
msgstr ""
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 ""
msgid ""
"For the iPhone platform to be detected, you need the ``OSXCROSS_IOS`` "
"environment variable defined to anything."
msgstr ""
msgid ""
"Now you can compile for iPhone using SCons like the standard Godot way, with "
"some additional arguments to provide the correct paths:"
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,88 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Getting the source"
msgstr ""
msgid "Downloading the Godot source code"
msgstr ""
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 ""
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 ""
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 ""
"Jos käännät käännöksiä tehdessäsi lisäyksiä tai muutospyyntöjä, noudata :ref:"
"`Pull Request workflow <doc_pr_workflow>`:n ohjeita."
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 ""
msgid ""
"In general, you need to install ``git`` and/or one of the various GUI "
"clients."
msgstr ""
msgid ""
"Afterwards, to get the latest development version of the Godot source code "
"(the unstable ``master`` branch), you can use ``git clone``."
msgstr ""
msgid ""
"If you are using the ``git`` command line client, this is done by entering "
"the following in a terminal:"
msgstr ""
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 ""
msgid ""
"With ``git``, you can also clone a stable release by specifying its branch "
"or tag after the ``--branch`` (or just ``-b``) argument::"
msgstr ""
msgid ""
"There are also generally branches besides ``master`` for each major version."
msgstr ""
msgid ""
"After downloading the Godot source code, you can :ref:`continue to compiling "
"Godot <doc_introduction_to_the_buildsystem>`."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,25 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Building from source"
msgstr "Sisäänrakennettu teemaeditori."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,501 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Introduction to the buildsystem"
msgstr ""
msgid "Setup"
msgstr "Järjestely"
msgid ""
":ref:`Godot uses the SCons build system. <doc_faq_why_scons>` Please refer "
"to the documentation for:"
msgstr ""
#, fuzzy
msgid ":ref:`doc_compiling_for_android`"
msgstr ":ref:`doc_complying_with_licenses`"
#, fuzzy
msgid ":ref:`doc_compiling_for_ios`"
msgstr ":ref:`doc_complying_with_licenses`"
#, fuzzy
msgid ":ref:`doc_compiling_for_linuxbsd`"
msgstr ":ref:`doc_complying_with_licenses`"
#, fuzzy
msgid ":ref:`doc_compiling_for_macos`"
msgstr ":ref:`doc_complying_with_licenses`"
#, fuzzy
msgid ":ref:`doc_compiling_for_uwp`"
msgstr ":ref:`doc_complying_with_licenses`"
#, fuzzy
msgid ":ref:`doc_compiling_for_web`"
msgstr ":ref:`doc_complying_with_licenses`"
#, fuzzy
msgid ":ref:`doc_compiling_for_windows`"
msgstr ":ref:`doc_complying_with_licenses`"
msgid "Platform selection"
msgstr ""
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 ""
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 ""
msgid "To list the available target platforms, use ``scons platform=list``::"
msgstr ""
msgid ""
"To build for a platform (for example, ``linuxbsd``), run with the "
"``platform=`` (or ``p=`` to make it short) argument:"
msgstr ""
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 ""
msgid "Example for using 4 threads:"
msgstr ""
msgid "Resulting binary"
msgstr ""
msgid ""
"The resulting binaries will be placed in the ``bin/`` subdirectory, "
"generally with this naming convention::"
msgstr ""
#, fuzzy
msgid "For the previous build attempt, the result would look like this::"
msgstr "Skenepuun pitäisi näyttää tältä:"
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 ""
msgid "A Windows binary with the same configuration will look like this:"
msgstr ""
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 ""
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 ""
msgid "Target"
msgstr "Kohde"
msgid ""
"Target controls if the editor is contained and debug flags are used. All "
"builds are optimized. Each mode means:"
msgstr ""
msgid ""
"**editor**: Build with editor, optimized, with debugging code (defines: "
"``TOOLS_ENABLED``, ``DEBUG_ENABLED``, ``-O2``/``/O2``)"
msgstr ""
msgid ""
"**template_debug**: Build with C++ debugging symbols (defines: "
"``DEBUG_ENABLED``, ``-O2``/``/O2``)"
msgstr ""
msgid "**template_release**: Build without symbols (defines: ``-O3``/``/O2``)"
msgstr ""
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 ""
#, fuzzy
msgid "Development and production aliases"
msgstr "Kehitys"
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 ""
msgid "Godot provides two aliases for this purpose:"
msgstr ""
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 ""
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 ""
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 ""
msgid "Dev build"
msgstr ""
msgid ""
"``dev_build`` should **not** be confused with ``dev_mode``, which is an "
"alias for several development-related options (see above)."
msgstr ""
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 ""
msgid ""
"This flag appends the ``.dev`` suffix (for development) to the generated "
"binary name."
msgstr ""
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 ""
#, fuzzy
msgid "Debugging symbols"
msgstr "Projektin valmistelu"
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 ""
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 ""
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 ""
msgid ""
"Use the ``strip <path/to/binary>`` command to remove debugging symbols from "
"a binary you've already compiled."
msgstr ""
#, fuzzy
msgid "Optimization level"
msgstr "Optimointi"
msgid "Several compiler optimization levels can be chosen from:"
msgstr ""
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 ""
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 ""
msgid ""
"``optimize=size`` *(default when targeting the Web platform)*: Favors small "
"binaries at the cost of slower execution speed."
msgstr ""
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 ""
msgid ""
"``optimize=none``: Do not perform any optimization. This provides the "
"fastest build times, but the slowest execution times."
msgstr ""
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 ""
#, fuzzy
msgid "Architecture"
msgstr "tekstuurit"
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 ""
msgid ""
"Supported values for the ``arch`` option are **auto**, **x86_32**, "
"**x86_64**, **arm32**, **arm64**, **rv64**, **ppc32**, **ppc64** and "
"**wasm32**."
msgstr ""
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 ""
#, fuzzy
msgid "Custom modules"
msgstr "Mukautetut signaalit"
msgid ""
"It's possible to compile modules residing outside of Godot's directory tree, "
"along with the built-in modules."
msgstr ""
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 ""
msgid ""
"For instance, it's possible to provide both relative, absolute, and user "
"directory paths containing such modules:"
msgstr ""
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 ""
#, fuzzy
msgid ":ref:`doc_custom_modules_in_cpp`"
msgstr ":ref:`doc_using_multimesh`"
#, fuzzy
msgid "Cleaning generated files"
msgstr "PO-pohjan luonti"
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 ""
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 ""
msgid "Other build options"
msgstr ""
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 ""
msgid ""
"Check the output of ``scons --help`` for details about each option for the "
"version you are willing to compile."
msgstr ""
#, fuzzy
msgid "Overriding the build options"
msgstr "Virtuaalifunktion ylikirjoitus"
#, fuzzy
msgid "Using a file"
msgstr "Välilyöntien käyttö"
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 ""
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 ""
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 ""
msgid ""
"Another custom file can be specified explicitly with the ``profile`` command "
"line option, both overriding the default build configuration:"
msgstr ""
msgid ""
"Build options set from the file can be overridden by the command line "
"options."
msgstr ""
msgid "It's also possible to override the options conditionally:"
msgstr ""
msgid "Using the SCONSFLAGS"
msgstr ""
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 ""
msgid ""
"For instance, you may want to force a number of CPU threads with the "
"aforementioned ``-j`` option for all future builds:"
msgstr ""
msgid "SCU (single compilation unit) build"
msgstr ""
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 ""
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 ""
msgid "To make a SCU build, use the ``scu_build=yes`` SCons option."
msgstr ""
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 ""
msgid "Export templates"
msgstr "Vientimallit"
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,275 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Optimizing a build for size"
msgstr ""
msgid "Rationale"
msgstr ""
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 ""
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 ""
msgid ""
"The options below are listed from the most important (greatest size savings) "
"to the least important (lowest size savings)."
msgstr ""
msgid "Stripping binaries"
msgstr ""
msgid "**Space savings:** Very high"
msgstr ""
msgid "**Difficulty:** Easy"
msgstr ""
msgid "**Performed in official builds:** Yes"
msgstr ""
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 ""
msgid "On Windows, ``strip.exe`` is included in most MinGW toolchain setups."
msgstr ""
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 ""
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 ""
msgid "Optimizing for size instead of speed"
msgstr ""
msgid "**Space savings:** High"
msgstr ""
msgid "**Performed in official builds:** Yes, but only for HTML5"
msgstr ""
msgid ""
"Godot 3.1 onwards allows compiling using size optimizations (instead of "
"speed). To enable this, set the ``optimize`` flag to ``size``:"
msgstr ""
msgid "Some platforms such as WebAssembly already use this mode by default."
msgstr ""
msgid "Compiling with link-time optimization"
msgstr ""
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 ""
msgid ""
"Linking becomes much slower and more RAM-consuming with this option, so it "
"should be used only for release builds:"
msgstr ""
msgid ""
"When compiling the ``master`` branch, you need to have at least 8 GB of RAM "
"available for successful linking with LTO enabled."
msgstr ""
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 ""
msgid "Disabling 3D"
msgstr ""
msgid "**Space savings:** Moderate"
msgstr ""
msgid "**Performed in official builds:** No"
msgstr ""
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 ""
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 ""
msgid "Disabling advanced GUI objects"
msgstr ""
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 ""
msgid "This is everything that will be disabled:"
msgstr ""
#, fuzzy
msgid "FileDialog"
msgstr "Tiedoston kuvaus"
msgid "PopupMenu"
msgstr ""
#, fuzzy
msgid "Tree"
msgstr "SkenePuu"
#, fuzzy
msgid "TextEdit"
msgstr "Editori"
#, fuzzy
msgid "CodeEdit"
msgstr "Editori"
msgid "SyntaxHighlighter"
msgstr ""
msgid "CodeHighlighter"
msgstr ""
msgid "TreeItem"
msgstr ""
#, fuzzy
msgid "OptionButton"
msgstr "Optimointi"
msgid "SpinBox"
msgstr ""
#, fuzzy
msgid "ColorPicker"
msgstr "Väriavaruus"
msgid "ColorPickerButton"
msgstr ""
#, fuzzy
msgid "RichTextlabel"
msgstr "ScoreLabel"
msgid "RichTextEffect"
msgstr ""
#, fuzzy
msgid "CharFXTransform"
msgstr "Tyhjennä muunnos"
#, fuzzy
msgid "AcceptDialog"
msgstr "Tiedoston kuvaus"
msgid "ConfirmationDialog"
msgstr ""
#, fuzzy
msgid "MarginContainer"
msgstr "Mukautettujen Container-tyyppien luonti"
#, fuzzy
msgid "SubViewportContainer"
msgstr "Mukautettujen Container-tyyppien luonti"
#, fuzzy
msgid "SplitContainer"
msgstr "Mukautettujen Container-tyyppien luonti"
#, fuzzy
msgid "HSplitContainer"
msgstr "Mukautettujen Container-tyyppien luonti"
#, fuzzy
msgid "VSplitContainer"
msgstr "Mukautettujen Container-tyyppien luonti"
msgid "GraphNode"
msgstr ""
msgid "GraphEdit"
msgstr ""
msgid "Disabling unwanted modules"
msgstr ""
msgid "**Space savings:** Very low to moderate depending on modules"
msgstr ""
msgid "**Difficulty:** Medium to hard depending on modules"
msgstr ""
msgid ""
"A lot of Godot's functions are offered as modules. You can see a list of "
"modules with the following command:"
msgstr ""
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 ""
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 ""
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 ""
msgid ":ref:`doc_overriding_build_options`."
msgstr ":ref:`doc_overriding_build_options`."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,207 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Android Studio"
msgstr "Android SDK"
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 ""
msgid "Importing the project"
msgstr ""
#, fuzzy
msgid "From the Android Studio's welcome window select **Open**."
msgstr "Android Studion tervetuloikkuna."
msgid "Android Studio's welcome window."
msgstr "Android Studion tervetuloikkuna."
msgid ""
"Navigate to ``<Godot root directory>/platform/android/java`` and select the "
"``settings.gradle`` file."
msgstr ""
msgid "Android Studio will import and index the project."
msgstr ""
#, fuzzy
msgid "Android Studio project layout"
msgstr "Android SDK"
#, fuzzy
msgid ""
"The project is organized using `Android Studio's modules <https://developer."
"android.com/studio/projects#ApplicationModules>`_:"
msgstr ""
"Lataa ja asenna Android SDK osoitteesta `developer.android.com <https://"
"developer.android.com/studio/>`__."
msgid "``lib`` module:"
msgstr ""
msgid ""
"Located under ``<Godot root directory>/platform/android/java/lib``, this is "
"a **library module** that organizes"
msgstr ""
msgid ""
"the Godot java and native code and make it available as a reusable "
"dependency / artifact."
msgstr ""
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 ""
msgid "``editor`` module:"
msgstr ""
msgid ""
"Located under ``<Godot root directory>/platform/android/java/editor``, this "
"is an **application module** that holds"
msgstr ""
msgid "the source code for the Android port of the Godot Editor."
msgstr ""
msgid "This module has a dependency on the ``lib`` module."
msgstr ""
msgid "``app`` module:"
msgstr ""
msgid ""
"Located under ``<Godot root directory>/platform/android/java/app``, this is "
"an **application module** that holds"
msgstr ""
msgid "the source code for the Android build templates."
msgstr ""
#, fuzzy
msgid "Building & debugging the editor module"
msgstr "Sisäänrakennettu teemaeditori."
msgid "To build the ``editor`` module:"
msgstr ""
msgid ""
"Select the `Run/Debug Configurations drop down <https://developer.android."
"com/studio/run/rundebugconfig#running>`_ and select ``editor``."
msgstr ""
msgid ""
"Select **Run > Run 'editor'** from the top menu or `click the Run icon "
"<https://developer.android.com/studio/run/rundebugconfig#running>`_."
msgstr ""
msgid "To debug the ``editor`` module:"
msgstr ""
msgid ""
"Open the **Build Variants** window using **View > Tools Windows > Build "
"Variants** from the top menu."
msgstr ""
msgid ""
"In the **Build Variants** window, make sure that in the **Active Build "
"Variant** column, the ``:editor`` entry is set to **dev**."
msgstr ""
msgid ""
"Open the **Run/Debug Configurations** window by clicking on **Run > Edit "
"Configurations...** on the top menu."
msgstr ""
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 ""
msgid ""
"Select **Run > Debug 'editor'** from the top menu or `click the Debug icon "
"<https://developer.android.com/studio/run/rundebugconfig#running>`_."
msgstr ""
msgid "Building & debugging the app module"
msgstr ""
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 ""
msgid "To build the ``app`` module:"
msgstr ""
msgid ""
"Select the `Run/Debug Configurations drop down <https://developer.android."
"com/studio/run/rundebugconfig#running>`_ and select ``app``."
msgstr ""
msgid ""
"Select **Run > Run 'app'** from the top menu or `click the Run icon <https://"
"developer.android.com/studio/run/rundebugconfig#running>`_."
msgstr ""
msgid "To debug the ``app`` module:"
msgstr ""
msgid ""
"In the **Build Variants** window, make sure that in the **Active Build "
"Variant** column, the ``:app`` entry is set to **dev**."
msgstr ""
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 ""
msgid ""
"Select **Run > Debug 'app'** from the top menu or `click the Debug icon "
"<https://developer.android.com/studio/run/rundebugconfig#running>`_."
msgstr ""
#, fuzzy
msgid ""
"If you run into any issues, ask for help in `Godot's Android dev channel "
"<https://chat.godotengine.org/channel/android>`__."
msgstr ""
"Lyhyt yhteenveto näistä ja muista kanavista on saatavilla myös `Godotin "
"verkkosivustolla <https://godotengine.org/community>`_."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,134 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "CLion"
msgstr ""
msgid ""
"`CLion <https://www.jetbrains.com/clion/>`_ is a commercial `JetBrains "
"<https://www.jetbrains.com/>`_ IDE for C++."
msgstr ""
msgid "Importing the project"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Compiling and debugging the project"
msgstr "Projektin valmistelu"
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 ""
msgid "To add a custom build target that invokes SCons for compilation:"
msgstr ""
msgid ""
"Open CLion and navigate to **Preferences > Build, Execution, Deployment > "
"Custom Build Targets**"
msgstr ""
msgid "Click **Add target** and give the target a name, e.g. ``Godot debug``."
msgstr ""
msgid ""
"Click **...** next to the **Build:** selectbox, then click the **+** button "
"in the **External Tools** dialog to add a new external tool."
msgstr ""
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 ""
msgid ""
"CLion does not expand shell commands like ``scons -j$(nproc)``. Use concrete "
"values instead, e.g. ``scons -j8``."
msgstr ""
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 ""
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 ""
msgid "In the main IDE window, click **Add Configuration**."
msgstr ""
msgid ""
"In the **Run/Debug Configuration** dialog, click **Add new...**, then select "
"**Custom Build Application** to create a new custom run/debug configuration."
msgstr ""
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 ""
msgid ""
"You can now build, run, debug, profile, and Valgrind check the Godot editor "
"via the run configuration."
msgstr ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,176 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Code::Blocks"
msgstr ""
msgid ""
"`Code::Blocks <https://codeblocks.org/>`_ is a free, open source, cross "
"platform IDE."
msgstr ""
msgid "Creating a new project"
msgstr "Uuden projektin luominen"
msgid ""
"From Code::Blocks' main screen, click **Create a new project** or select "
"**File > New > Project...**."
msgstr ""
msgid ""
"In the **New from template** window, from **Projects**, select **Empty "
"project**, and click **Go**."
msgstr ""
msgid "Click Next, to pass the welcome to the new empty project wizard."
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Configuring the build"
msgstr "Projektin määrittäminen"
msgid ""
"The first step is to change the project properties. Right-click on the new "
"project and select **Properties...**."
msgstr ""
msgid ""
"Check the **This is a custom Makefile** property. Click OK to save the "
"changes."
msgstr ""
msgid ""
"The next step is to change the build options. Right-click on the new project "
"and select **Build Options...**."
msgstr ""
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 ""
msgid ""
"If you're using Windows, all the commands need to be preceded with ``cmd /"
"c`` to initialize the command interpreter."
msgstr ""
msgid "Windows example:"
msgstr "Windows-esimerkki:"
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 ""
#, fuzzy
msgid "Configuring the run"
msgstr "Projektin määrittäminen"
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 ""
msgid ""
"Deselect the **Auto-generate filename prefix** and **Auto-generate filename "
"extension** options."
msgstr ""
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 ""
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 ""
msgid "Adding files to the project"
msgstr "Tiedostojen lisääminen projektiin"
msgid ""
"To add all the Godot code files to the project, right-click on the new "
"project and select **Add files recursively...**."
msgstr ""
msgid ""
"It should automatically select the project folder; so simply click **Open**. "
"By default, all code files are included, so simply click **OK**."
msgstr ""
msgid "Code style configuration"
msgstr ""
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 ""
msgid ""
"Under **General Settings**, on the **Editor Settings** tab, under **Tab "
"Options** check **Use TAB character**."
msgstr ""
#, fuzzy
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 ""
"Lyhyt yhteenveto näistä ja muista kanavista on saatavilla myös `Godotin "
"verkkosivustolla <https://godotengine.org/community>`_."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,46 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Configuring an IDE"
msgstr ""
msgid ""
"We assume that you have already `cloned <https://github.com/godotengine/"
"godot>`_ and :ref:`compiled <toc-devel-compiling>` Godot."
msgstr ""
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 ""
msgid ""
"It is possible to use other IDEs, but their setup is not documented yet."
msgstr ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,118 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "KDevelop"
msgstr "KDevelop"
msgid ""
"`KDevelop <https://www.kdevelop.org>`_ is a free, open source IDE for all "
"desktop platforms."
msgstr ""
msgid "Importing the project"
msgstr ""
msgid "From the KDevelop's main screen select **Open Project**."
msgstr ""
msgid "KDevelop's main screen."
msgstr ""
msgid "Navigate to the Godot root folder and select it."
msgstr ""
msgid ""
"On the next screen, choose **Custom Build System** for the **Project "
"Manager**."
msgstr ""
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 ""
msgid ""
"Under **Language Support** open the **Includes/Imports** tab and add the "
"following paths:"
msgstr ""
msgid "Apply the changes."
msgstr ""
msgid ""
"Under **Custom Build System** add a new build configuration with the "
"following settings:"
msgstr ""
msgid "Build Directory"
msgstr ""
msgid "*blank*"
msgstr ""
msgid "Enable"
msgstr "Ota käyttöön"
msgid "**True**"
msgstr ""
msgid "Executable"
msgstr ""
msgid "**scons**"
msgstr ""
msgid "Arguments"
msgstr ""
msgid ""
"See :ref:`doc_introduction_to_the_buildsystem` for a full list of arguments."
msgstr ""
msgid "Apply the changes and close the configuration window."
msgstr ""
#, fuzzy
msgid "Debugging the project"
msgstr "Projektin valmistelu"
msgid "Select **Run > Configure Launches...** from the top menu."
msgstr ""
msgid "Click **Add** to create a new launch configuration."
msgstr ""
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 ""
#, fuzzy
msgid ""
"If you run into any issues, ask for help in one of `Godot's community "
"channels <https://godotengine.org/community>`__."
msgstr ""
"Lyhyt yhteenveto näistä ja muista kanavista on saatavilla myös `Godotin "
"verkkosivustolla <https://godotengine.org/community>`_."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,147 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Qt Creator"
msgstr ""
msgid ""
"`Qt Creator <https://doc.qt.io/qtcreator/index.html>`_ is a free, open "
"source IDE for all desktop platforms."
msgstr ""
msgid "Importing the project"
msgstr ""
msgid ""
"From the Qt Creator's main screen select **New Project > Import Project > "
"Import Existing Project**."
msgstr ""
msgid "Under **Location** select the Godot root folder."
msgstr ""
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 ""
msgid ""
"You can change this configuration later by right-clicking on your project "
"and selecting the **Edit Files...** option."
msgstr ""
msgid "Finish the import."
msgstr ""
msgid ""
"Open the ``project_name.includes`` file and add a line containing ``.`` to "
"it to correctly enable the code completion."
msgstr ""
msgid "From the left-side menu select **Projects** and open the **Build** tab."
msgstr ""
msgid "Delete the predefined ``make`` build step."
msgstr ""
msgid ""
"Click **Add Build Step > Custom Process Step** to add a new build step with "
"the following settings:"
msgstr ""
msgid "Command"
msgstr ""
msgid "**scons**"
msgstr ""
msgid "Arguments"
msgstr ""
msgid ""
"See :ref:`doc_introduction_to_the_buildsystem` for a full list of arguments."
msgstr ""
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 ""
#, fuzzy
msgid "Debugging the project"
msgstr "Projektin valmistelu"
msgid "From the left-side menu select **Projects** and open the **Run** tab."
msgstr ""
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 ""
msgid ""
"If you want to run a specific project, specify its root folder under "
"**Working directory**."
msgstr ""
msgid ""
"If you want to run the editor, add ``-e`` to the **Command line arguments** "
"field."
msgstr ""
msgid ""
"To learn more about command line arguments, refer to the :ref:`command line "
"tutorial <doc_command_line_tutorial>`."
msgstr ""
msgid "Code style configuration"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid ""
"If you run into any issues, ask for help in one of `Godot's community "
"channels <https://godotengine.org/community>`__."
msgstr ""
"Lyhyt yhteenveto näistä ja muista kanavista on saatavilla myös `Godotin "
"verkkosivustolla <https://godotengine.org/community>`_."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,111 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Rider"
msgstr ""
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 ""
msgid "Importing the project"
msgstr ""
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 ""
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 ""
msgid ""
"Navigate to the Godot root folder and open a Command Prompt or PowerShell "
"window."
msgstr ""
msgid "Copy, paste and run the next command to generate the solution."
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Compiling and debugging the project"
msgstr "Projektin valmistelu"
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 ""
msgid ""
"Click on the **Godot > Edit Configurations** option at the top of the screen."
msgstr ""
msgid ""
"Delete what is under **Program arguments** and paste the following line:"
msgstr ""
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 ""
msgid "Finally click on apply and ok to save the changes."
msgstr ""
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 ""
msgid ""
"Alternatively you can use **Run > Attach to Process** to attach the debugger "
"to a running Godot instance."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,131 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Visual Studio"
msgstr "Visual Studio Code"
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 ""
msgid "Importing the project"
msgstr ""
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 ""
msgid ""
"Navigate to the Godot root folder and open a Command Prompt or PowerShell "
"window."
msgstr ""
msgid ""
"Run ``scons platform=windows vsproj=yes dev_build=yes`` to generate the "
"solution with debug symbols."
msgstr ""
msgid ""
"The ``vsproj`` parameter signals that you want Visual Studio solution "
"generated."
msgstr ""
msgid ""
"The ``dev_build`` parameter makes sure the debug symbols are included, "
"allowing to e.g. step through code using breakpoints."
msgstr ""
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 ""
msgid "Use the **Build** top menu to build the project."
msgstr ""
msgid ""
"Visual Studio must be configured with the C++ package. It can be selected in "
"the installer:"
msgstr ""
#, fuzzy
msgid "Debugging the project"
msgstr "Projektin valmistelu"
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 ""
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 ""
msgid ""
"To configure the launch options to use with the debugger use **Project > "
"Properties** from the top menu:"
msgstr ""
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 ""
msgid ""
"To learn more about command line arguments, refer to the :ref:`command line "
"tutorial <doc_command_line_tutorial>`."
msgstr ""
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 ""
msgid ""
"To check that everything is working, put a breakpoint in ``main.cpp`` and "
"press :kbd:`F5` to start debugging."
msgstr ""
#, fuzzy
msgid ""
"If you run into any issues, ask for help in one of `Godot's community "
"channels <https://godotengine.org/community>`__."
msgstr ""
"Lyhyt yhteenveto näistä ja muista kanavista on saatavilla myös `Godotin "
"verkkosivustolla <https://godotengine.org/community>`_."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,146 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Visual Studio Code"
msgstr "Visual Studio Code"
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 ""
msgid "Importing the project"
msgstr ""
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 ""
msgid "When using the clangd extension, run ``scons compiledb=yes``."
msgstr ""
msgid ""
"From the Visual Studio Code's main screen open the Godot root folder with "
"**File > Open Folder...**."
msgstr ""
msgid ""
"Press :kbd:`Ctrl + Shift + P` to open the command prompt window and enter "
"*Configure Task*."
msgstr ""
msgid "Select the **Create tasks.json file from template** option."
msgstr ""
msgid "Then select **Others**."
msgstr ""
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 ""
msgid ""
"Within the ``tasks.json`` file find the ``\"tasks\"`` array and add a new "
"section to it:"
msgstr ""
msgid "An example of a filled out ``tasks.json``."
msgstr ""
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 ""
#, fuzzy
msgid "Debugging the project"
msgstr "Projektin valmistelu"
msgid ""
"To run and debug the project you need to create a new configuration in the "
"``launch.json`` file."
msgstr ""
msgid "Press :kbd:`Ctrl + Shift + D` to open the Run panel."
msgstr ""
msgid ""
"If ``launch.json`` file is missing you will be prompted to create a new one."
msgstr ""
msgid ""
"Select **C++ (GDB/LLDB)**. There may be another platform specific option "
"here. If selected, adjust the configuration example provided accordingly."
msgstr ""
msgid ""
"Within the ``launch.json`` file find the ``\"configurations\"`` array and "
"add a new section to it:"
msgstr ""
msgid "An example of a filled out ``launch.json``."
msgstr ""
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 ""
msgid ""
"If you encounter issues with lldb, you may consider using gdb (see the "
"LinuxBSD_gdb configuration)."
msgstr ""
msgid ""
"Do note that lldb may work better with LLVM-based builds. See :ref:"
"`doc_compiling_for_linuxbsd` for further information."
msgstr ""
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 ""
#, fuzzy
msgid ""
"If you run into any issues, ask for help in one of `Godot's community "
"channels <https://godotengine.org/community>`__."
msgstr ""
"Lyhyt yhteenveto näistä ja muista kanavista on saatavilla myös `Godotin "
"verkkosivustolla <https://godotengine.org/community>`_."
msgid ""
"To get linting on class reference XML files, install the `vscode-xml "
"extension <https://marketplace.visualstudio.com/items?itemName=redhat.vscode-"
"xml>`__."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,171 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Xcode"
msgstr ""
msgid ""
"`Xcode <https://developer.apple.com/xcode>`_ is a free macOS-only IDE. You "
"can download it from the Mac App Store."
msgstr ""
msgid "Importing the project"
msgstr ""
msgid ""
"From Xcode's main screen create a new project using the **Other > External "
"Build System** template."
msgstr ""
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 ""
msgid ""
"Open the main target from the **Targets** section and select the **Info** "
"tab."
msgstr ""
#, fuzzy
msgid "Fill out the form with the following settings:"
msgstr "Se tuottaa seuraavanlaisen liikkeen:"
msgid "Arguments"
msgstr ""
msgid ""
"See :ref:`doc_introduction_to_the_buildsystem` for a full list of arguments."
msgstr ""
#, fuzzy
msgid "Directory"
msgstr "Vektori"
msgid "A full path to the Godot root folder"
msgstr ""
msgid ""
"Add a Command Line Tool target which will be used for indexing the project "
"by choosing **File > New > Target...**."
msgstr ""
msgid "Select **macOS > Application > Command Line Tool**."
msgstr ""
msgid ""
"Name it something so you know not to compile with this target (e.g. "
"``GodotXcodeIndex``)."
msgstr ""
msgid ""
"For this target open the **Build Settings** tab and look for **Header Search "
"Paths**."
msgstr ""
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 ""
#, fuzzy
msgid ""
"Add the Godot source to the project by dragging and dropping it into the "
"project file browser."
msgstr "Raahaa skriptin solmun päälle Skene-telakassa."
msgid ""
"Select **Create groups** for the **Added folders** option and check *only* "
"your command line indexing target in the **Add to targets** section."
msgstr ""
msgid "Xcode will now index the files. This may take a few minutes."
msgstr ""
msgid ""
"Once Xcode is done indexing, you should have jump-to-definition, "
"autocompletion, and full syntax highlighting."
msgstr ""
#, fuzzy
msgid "Debugging the project"
msgstr "Projektin valmistelu"
msgid ""
"To enable debugging support you need to edit the external build target's "
"build and run schemes."
msgstr ""
msgid "Open the scheme editor of the external build target."
msgstr ""
msgid "Locate the **Build > Post Actions** section."
msgstr ""
msgid "Add a new script run action"
msgstr ""
msgid ""
"Under **Provide build settings from** select your project. This allows to "
"reference the project directory within the script."
msgstr ""
msgid ""
"Create a script that will give the binary a name that Xcode can recognize, e."
"g.:"
msgstr ""
msgid "Build the external build target."
msgstr ""
msgid "Open the scheme editor again and select **Run**."
msgstr ""
msgid ""
"Set the **Executable** to the file you linked in your post-build action "
"script."
msgstr ""
msgid "Check **Debug executable**."
msgstr ""
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 ""
msgid ""
"To check that everything is working, put a breakpoint in ``platform/macos/"
"godot_main_macos.mm`` and run the project."
msgstr ""
#, fuzzy
msgid ""
"If you run into any issues, ask for help in one of `Godot's community "
"channels <https://godotengine.org/community>`__."
msgstr ""
"Lyhyt yhteenveto näistä ja muista kanavista on saatavilla myös `Godotin "
"verkkosivustolla <https://godotengine.org/community>`_."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,277 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "2D coordinate systems and 2D transforms"
msgstr ""
msgid "Introduction"
msgstr "Johdanto"
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 ""
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 ""
msgid "Godot 2D coordinate systems"
msgstr ""
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 ""
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 ""
msgid "Click graphic to enlarge."
msgstr ""
#, fuzzy
msgid "**Item Coordinates**"
msgstr "Seuraava koordinaatti"
msgid ""
"This is the local coordinate system of a :ref:`CanvasItem "
"<class_CanvasItem>`."
msgstr ""
#, fuzzy
msgid "**Parent Item Coordinates**"
msgstr "Seuraava koordinaatti"
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 ""
#, fuzzy
msgid "**Canvas Coordinates**"
msgstr "Edellinen koordinaatti"
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 ""
#, fuzzy
msgid "**Viewport Coordinates**"
msgstr "Seuraava koordinaatti"
msgid "This is the coordinate system of the :ref:`Viewport <class_Viewport>`."
msgstr ""
#, fuzzy
msgid "**Camera Coordinates**"
msgstr "Seuraava koordinaatti"
msgid ""
"This is only used internally for functionality like 3D-camera ray "
"projections."
msgstr ""
msgid "**Embedder Coordinates / Screen Coordinates**"
msgstr ""
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 ""
msgid ""
"If the embedder is the OS Window Manager, then they are also called Screen "
"Coordinates."
msgstr ""
msgid "**Absolute Embedder Coordinates / Absolute Screen Coordinates**"
msgstr ""
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 ""
msgid ""
"If the embedder is the OS Window Manager, then they are also called Absolute "
"Screen Coordinates."
msgstr ""
#, fuzzy
msgid "Node transforms"
msgstr "Muunna"
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 ""
#, fuzzy
msgid "**CanvasItem transform**"
msgstr "**Transform**"
msgid "*CanvasItems* are either *Control*-nodes or *Node2D*-nodes."
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "**CanvasLayer transform**"
msgstr "**Transform**"
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 ""
msgid "**CanvasLayer follow viewport transform**"
msgstr ""
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 ""
msgid "**Viewport canvas transform**"
msgstr ""
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 ""
msgid "**Viewport global canvas transform**"
msgstr ""
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 ""
msgid "**Viewport stretch transform**"
msgstr ""
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 ""
#, fuzzy
msgid "**Window transform**"
msgstr "**Transform**"
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 ""
#, fuzzy
msgid "**Window position**"
msgstr "**Kuvaus**"
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 ""
msgid "**SubViewportContainer shrink transform**"
msgstr ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,123 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Binding to external libraries"
msgstr ""
msgid "Modules"
msgstr ""
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 ""
msgid ""
"To bind to an external library, set up a module directory similar to the "
"Summator example:"
msgstr ""
msgid "Next, you will create a header file with a TTS class:"
msgstr ""
msgid "And then you'll add the cpp file."
msgstr ""
msgid ""
"Just as before, the new class needs to be registered somehow, so two more "
"files need to be created:"
msgstr ""
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 ""
#, fuzzy
msgid "These files should contain the following:"
msgstr "Tämä koodi antaa sinulle seuraavanlaisen käytöksen:"
msgid ""
"Next, you need to create a ``SCsub`` file so the build system compiles this "
"module:"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"To add include directories for the compiler to look at you can append it to "
"the environment's paths:"
msgstr ""
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 ""
msgid "The final module should look like this:"
msgstr "Lopullisen moduulin pitäisi näyttää tältä:"
msgid "Using the module"
msgstr ""
msgid "You can now use your newly created module from any script:"
msgstr ""
msgid "And the output will be ``is_spoken: True`` if the text is spoken."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,195 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Common engine methods and macros"
msgstr ""
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 ""
#, fuzzy
msgid "Print text"
msgstr "Maalaa laatta"
msgid ""
"If you need to add placeholders in your messages, use format strings as "
"described below."
msgstr ""
#, fuzzy
msgid "Format a string"
msgstr "Muoto"
msgid ""
"The ``vformat()`` function returns a formatted :ref:`class_String`. It "
"behaves in a way similar to C's ``sprintf()``:"
msgstr ""
msgid ""
"In most cases, try to use ``vformat()`` instead of string concatenation as "
"it makes for more readable code."
msgstr ""
msgid "Convert an integer or float to a string"
msgstr ""
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 ""
msgid "Internationalize a string"
msgstr ""
#, fuzzy
msgid "There are two types of internationalization in Godot's codebase:"
msgstr "Siirtymiä on olemassa useita eri tyyppisiä:"
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 ""
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 ""
msgid ""
"To insert placeholders in localizable strings, wrap the localization macro "
"in a ``vformat()`` call as follows:"
msgstr ""
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 ""
msgid "Clamp a value"
msgstr ""
msgid ""
"Godot provides macros for clamping a value with a lower bound (``MAX``), an "
"upper bound (``MIN``) or both (``CLAMP``):"
msgstr ""
msgid ""
"This works with any type that can be compared to other values (like ``int`` "
"and ``float``)."
msgstr ""
msgid "Microbenchmarking"
msgstr ""
msgid ""
"If you want to benchmark a piece of code but don't know how to use a "
"profiler, use this snippet:"
msgstr ""
msgid ""
"This will print the time spent between the ``begin`` declaration and the "
"``end`` declaration."
msgstr ""
msgid ""
"You may have to ``#include \"core/os/os.h\"`` if it's not present already."
msgstr ""
msgid ""
"When opening a pull request, make sure to remove this snippet as well as the "
"include if it wasn't there previously."
msgstr ""
"Kun avaat muutospyynnön, varmista, että poistat tämän pätkän sekä include-"
"osan, jos se ei ollut siellä aiemmin."
#, fuzzy
msgid "Get project/editor settings"
msgstr "varoitusjärjestelmän projektikohtaiset asetukset"
#, fuzzy
msgid "There are four macros available for this:"
msgstr "On kaksi tapaa tehdä tämä:"
msgid ""
"If a default value has been specified elsewhere, don't specify it again to "
"avoid repetition:"
msgstr ""
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 ""
#, fuzzy
msgid "Error macros"
msgstr "Virheet"
msgid ""
"Godot features many error macros to make error reporting more convenient."
msgstr ""
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 ""
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 ""
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 ""
msgid ""
"Also, always try to return processable data so the engine can keep running "
"well."
msgstr ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,319 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Core types"
msgstr ""
msgid ""
"Godot has a rich set of classes and templates that compose its core, and "
"everything is built upon them."
msgstr ""
msgid ""
"This reference will try to list them in order for their better understanding."
msgstr ""
msgid "Definitions"
msgstr ""
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 ""
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 ""
msgid ""
"For files or memory sizes, ``size_t`` is used, which is warranted to be 64 "
"bits."
msgstr ""
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 ""
msgid "References:"
msgstr ""
#, fuzzy
msgid ""
"`core/typedefs.h <https://github.com/godotengine/godot/blob/master/core/"
"typedefs.h>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid "Memory model"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Allocating memory"
msgstr ""
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 ""
msgid "For C-style allocation, Godot provides a few macros:"
msgstr ""
msgid ""
"These are equivalent to the usual malloc, realloc, free of the standard C "
"library."
msgstr ""
msgid "For C++-style allocation, special macros are provided:"
msgstr ""
msgid "which are equivalent to new, delete, new[] and delete[]."
msgstr ""
msgid ""
"memnew/memdelete also use a little C++ magic and notify Objects right after "
"they are created, and right before they are deleted."
msgstr ""
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 ""
msgid ""
"PoolVector can be accessed using the [] operator and a few helpers exist for "
"this:"
msgstr ""
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 ""
#, fuzzy
msgid ""
"`core/os/memory.h <https://github.com/godotengine/godot/blob/master/core/os/"
"memory.h>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
#, fuzzy
msgid ""
"`core/pool_vector.h <https://github.com/godotengine/godot/blob/master/core/"
"pool_vector.cpp>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid "Containers"
msgstr ""
msgid "Godot provides also a set of common containers:"
msgstr ""
msgid "Vector"
msgstr "Vektori"
msgid "List"
msgstr ""
msgid "Set"
msgstr "Aseta"
msgid "Map"
msgstr ""
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 ""
msgid "The Vector<> class also has a few nice features:"
msgstr ""
msgid ""
"It does copy on write, so making copies of it is cheap as long as they are "
"not modified."
msgstr ""
msgid ""
"It supports multi-threading, by using atomic operations on the reference "
"counter."
msgstr ""
#, fuzzy
msgid ""
"`core/templates/vector.h <https://github.com/godotengine/godot/blob/master/"
"core/templates/vector.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
#, fuzzy
msgid ""
"`core/templates/list.h <https://github.com/godotengine/godot/blob/master/"
"core/templates/list.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
#, fuzzy
msgid ""
"`core/templates/set.h <https://github.com/godotengine/godot/blob/master/core/"
"templates/hash_set.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
#, fuzzy
msgid ""
"`core/templates/map.h <https://github.com/godotengine/godot/blob/master/core/"
"templates/hash_map.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "String"
msgstr ""
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 ""
#, fuzzy
msgid ""
"`core/string/ustring.h <https://github.com/godotengine/godot/blob/master/"
"core/string/ustring.h>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid "StringName"
msgstr ""
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 ""
msgid ""
"Creation of a StringName (especially a new one) is slow, but comparison is "
"fast."
msgstr ""
#, fuzzy
msgid ""
"`core/string/string_name.h <https://github.com/godotengine/godot/blob/master/"
"core/string/string_name.h>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid "Math types"
msgstr ""
msgid ""
"There are several linear math types available in the core/math directory."
msgstr ""
#, fuzzy
msgid ""
"`core/math <https://github.com/godotengine/godot/tree/master/core/math>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "NodePath"
msgstr ""
msgid ""
"This is a special datatype used for storing paths in a scene tree and "
"referencing them fast."
msgstr ""
#, fuzzy
msgid ""
"`core/string/node_path.h <https://github.com/godotengine/godot/blob/master/"
"core/string/node_path.h>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid "RID"
msgstr ""
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 ""
#, fuzzy
msgid ""
"`core/templates/rid.h <https://github.com/godotengine/godot/blob/master/core/"
"templates/rid.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,121 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Custom AudioStreams"
msgstr ""
msgid "Introduction"
msgstr "Johdanto"
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 ""
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 ""
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 ""
msgid "References:"
msgstr ""
msgid ""
"`servers/audio/audio_stream.h <https://github.com/godotengine/godot/blob/"
"master/servers/audio/audio_stream.h>`__"
msgstr ""
msgid ""
"`scene/audio/audioplayer.cpp <https://github.com/godotengine/godot/blob/"
"master/scene/audio/audio_player.cpp>`__"
msgstr ""
msgid "What for?"
msgstr ""
msgid "Binding external libraries (like Wwise, FMOD, etc)."
msgstr ""
msgid "Adding custom audio queues"
msgstr ""
msgid "Adding support for more audio formats"
msgstr ""
msgid "Create an AudioStream"
msgstr ""
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 ""
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 ""
msgid "Create an AudioStreamPlayback"
msgstr ""
msgid ""
"AudioStreamPlayer uses ``mix`` callback to obtain PCM data. The callback "
"must match sample rate and fill the buffer."
msgstr ""
msgid ""
"Since AudioStreamPlayback is controlled by the audio thread, i/o and dynamic "
"memory allocation are forbidden."
msgstr ""
msgid "Resampling"
msgstr ""
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 ""
msgid ""
"Instead of overloading ``mix``, AudioStreamPlaybackResampled uses "
"``_mix_internal`` to query AudioFrames and ``get_stream_sampling_rate`` to "
"query current mix rate."
msgstr ""
msgid ""
"`core/math/audio_frame.h <https://github.com/godotengine/godot/blob/master/"
"core/math/audio_frame.h>`__"
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,182 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Custom Godot servers"
msgstr ""
msgid "Introduction"
msgstr "Johdanto"
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 ""
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 ""
msgid "References"
msgstr ""
msgid ""
"`Why does Godot use servers and RIDs? <https://godotengine.org/article/why-"
"does-godot-use-servers-and-rids>`__"
msgstr ""
msgid "`Singleton pattern <https://en.wikipedia.org/wiki/Singleton_pattern>`__"
msgstr ""
msgid "`Mediator pattern <https://en.wikipedia.org/wiki/Mediator_pattern>`__"
msgstr ""
msgid "What for?"
msgstr ""
msgid "Adding artificial intelligence."
msgstr ""
msgid "Adding custom asynchronous threads."
msgstr ""
msgid "Adding support for a new input device."
msgstr ""
msgid "Adding writing threads."
msgstr ""
msgid "Adding a custom VoIP protocol."
msgstr ""
msgid "And more..."
msgstr ""
msgid "Creating a Godot server"
msgstr ""
msgid ""
"At minimum, a server must have a static instance, a sleep timer, a thread "
"loop, an initialization state and a cleanup procedure."
msgstr ""
msgid "Custom managed resource data"
msgstr ""
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 ""
msgid ":ref:`RID<class_rid>`"
msgstr ""
#, fuzzy
msgid ""
"`core/templates/rid.h <https://github.com/godotengine/godot/blob/master/core/"
"templates/rid.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Registering the class in GDScript"
msgstr ""
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 ""
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 ""
msgid ""
"In ``register_server_types()``, ``Engine::get_singleton()->add_singleton`` "
"is used to register the dummy class in GDScript."
msgstr ""
msgid ""
"`servers/register_server_types.cpp <https://github.com/godotengine/godot/"
"blob/master/servers/register_server_types.cpp>`__"
msgstr ""
msgid "Bind methods"
msgstr ""
msgid ""
"The dummy class binds singleton methods to GDScript. In most cases, the "
"dummy class methods wraps around."
msgstr ""
msgid "Binding Signals"
msgstr ""
msgid ""
"It is possible to emit signals to GDScript by calling the GDScript dummy "
"object."
msgstr ""
msgid "MessageQueue"
msgstr ""
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 ""
msgid "References:"
msgstr ""
#, fuzzy
msgid ""
"`core/object/message_queue.cpp <https://github.com/godotengine/godot/blob/"
"master/core/object/message_queue.cpp>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Summing it up"
msgstr ""
msgid "Here is the GDScript sample code:"
msgstr ""
msgid "Notes"
msgstr ""
msgid ""
"The actual `Hilbert Hotel <https://en.wikipedia.org/wiki/"
"Hilbert%27s_paradox_of_the_Grand_Hotel>`__ is impossible."
msgstr ""
msgid "Connecting signal example code is pretty hacky."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,544 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Custom modules in C++"
msgstr ""
msgid "Modules"
msgstr ""
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 ""
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 ""
msgid "What for?"
msgstr ""
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 ""
msgid "Binding an external library to Godot (like PhysX, FMOD, etc)."
msgstr ""
msgid "Optimize critical parts of a game."
msgstr ""
msgid "Adding new functionality to the engine and/or editor."
msgstr ""
msgid "Porting an existing game to Godot."
msgstr ""
msgid "Write a whole, new game in C++ because you can't live without C++."
msgstr ""
msgid "Creating a new module"
msgstr ""
msgid ""
"Before creating a module, make sure to :ref:`download the source code of "
"Godot and compile it <toc-devel-compiling>`."
msgstr ""
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 ""
msgid ""
"The example module will be called \"summator\" (``godot/modules/summator``). "
"Inside we will create a summator class:"
msgstr ""
msgid "And then the cpp file."
msgstr ""
msgid ""
"Then, the new class needs to be registered somehow, so two more files need "
"to be created:"
msgstr ""
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 ""
#, fuzzy
msgid "These files should contain the following:"
msgstr "Tämä koodi antaa sinulle seuraavanlaisen käytöksen:"
msgid ""
"Next, we need to create a ``SCsub`` file so the build system compiles this "
"module:"
msgstr ""
msgid ""
"With multiple sources, you can also add each file individually to a Python "
"string list:"
msgstr ""
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 ""
msgid ""
"To add include directories for the compiler to look at you can append it to "
"the environment's paths:"
msgstr ""
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 ""
msgid ""
"And finally, the configuration file for the module, this is a Python script "
"that must be named ``config.py``:"
msgstr ""
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 ""
msgid ""
"And that's it. Hope it was not too complex! Your module should look like "
"this:"
msgstr ""
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 ""
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 ""
msgid "Using the module"
msgstr ""
msgid "You can now use your newly created module from any script:"
msgstr ""
msgid "The output will be ``60``."
msgstr ""
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 ""
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 ""
msgid "Compiling a module externally"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"The build system shall detect all modules under the ``../modules`` directory "
"and compile them accordingly, including our \"summator\" module."
msgstr ""
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 ""
msgid ""
":ref:`Introduction to the buildsystem - Custom modules build option "
"<doc_buildsystem_custom_modules>`."
msgstr ""
msgid "Customizing module types initialization"
msgstr ""
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 ""
msgid ""
"A crude order of the engine setup can be summarized as a list of the "
"following type registration methods:"
msgstr ""
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 ""
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 ""
msgid ""
"We now need to add this method to ``register_types`` header and source files:"
msgstr ""
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 ""
msgid "Improving the build system for development"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"You have to ``export`` the environment variable. Otherwise, you won't be "
"able to run your project from the editor."
msgstr ""
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 ""
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 ""
msgid ""
"Finally, you can even speed up the build further by explicitly specifying "
"your shared module as target in the SCons command:"
msgstr ""
msgid "Writing custom documentation"
msgstr ""
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 ""
msgid "There are several steps in order to setup custom docs for the module:"
msgstr ""
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 ""
msgid "Now, we need to edit ``config.py``, add the following snippet:"
msgstr ""
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 ""
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 ""
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 ""
msgid "Example output::"
msgstr ""
msgid "Now we can generate the documentation:"
msgstr "Nyt voimme generoida dokumentaation:"
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 ""
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 ""
msgid "Run command:"
msgstr ""
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 ""
msgid ""
"Edit the file(s) following :ref:`doc_class_reference_primer` and recompile "
"the engine."
msgstr ""
msgid ""
"Once the compilation process is finished, the docs will become accessible "
"within the engine's built-in documentation system."
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Writing custom unit tests"
msgstr "Mukautettujen tietotyyppien luonti"
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 ""
#, fuzzy
msgid "The procedure is the following:"
msgstr "Huomaa seuraava:"
msgid "Create a new directory named ``tests/`` under your module's root:"
msgstr ""
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 ""
msgid "Write some test cases. Here's an example:"
msgstr ""
msgid ""
"Compile the engine with ``scons tests=yes``, and run the tests with the "
"following command:"
msgstr ""
msgid "You should see the passing assertions now."
msgstr ""
msgid "Adding custom editor icons"
msgstr "Omien editori-ikonien lisäys"
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 ""
msgid ""
"For the actual process of creating editor icons to be integrated within the "
"engine, please refer to :ref:`doc_editor_icons` first."
msgstr ""
msgid "Once you've created your icon(s), proceed with the following steps:"
msgstr ""
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 ""
msgid ""
"Move your newly created ``svg`` icons (optimized or not) into that folder."
msgstr ""
msgid ""
"Recompile the engine and run the editor. Now the icon(s) will appear in "
"editor's interface where appropriate."
msgstr ""
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 ""
msgid "Summing up"
msgstr ""
msgid "Remember to:"
msgstr ""
msgid "Use ``GDCLASS`` macro for inheritance, so Godot can wrap it."
msgstr ""
msgid ""
"Use ``_bind_methods`` to bind your functions to scripting, and to allow them "
"to work as callbacks for signals."
msgstr ""
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 ""
msgid ""
"But this is not all, depending what you do, you will be greeted with some "
"(hopefully positive) surprises."
msgstr ""
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 ""
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 ""
msgid ""
"By this same logic, you can extend the Editor and almost any area of the "
"engine."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,336 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Custom platform ports"
msgstr "Alustatuki"
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 ""
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 ""
msgid "Some reasons to create custom platform ports might be:"
msgstr ""
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 ""
msgid ""
"You want to port Godot to an exotic platform that isn't currently supported."
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Official platform ports"
msgstr ":ref:`doc_visual_shader_plugins`"
msgid ""
"The official platform ports can be used as a reference when creating a "
"custom platform port:"
msgstr ""
#, fuzzy
msgid ""
"`Windows <https://github.com/godotengine/godot/tree/master/platform/"
"windows>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
#, fuzzy
msgid ""
"`macOS <https://github.com/godotengine/godot/tree/master/platform/macos>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
#, fuzzy
msgid ""
"`Linux/\\*BSD <https://github.com/godotengine/godot/tree/master/platform/"
"linuxbsd>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
#, fuzzy
msgid ""
"`Android <https://github.com/godotengine/godot/tree/master/platform/"
"android>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
#, fuzzy
msgid "`iOS <https://github.com/godotengine/godot/tree/master/platform/ios>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
#, fuzzy
msgid ""
"`UWP <https://github.com/godotengine/godot/tree/master/platform/uwp>`__ "
"*(not currently working)*"
msgstr "https://github.com/godotengine/godot-demo-projects"
#, fuzzy
msgid "`Web <https://github.com/godotengine/godot/tree/master/platform/web>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
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 ""
#, fuzzy
msgid "Creating a custom platform port"
msgstr "Lepoasennon luonti"
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 ""
msgid "Required features of a platform port"
msgstr ""
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 ""
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 ""
msgid ""
"If your target platform is UNIX-like, consider inheriting from the "
"``OS_Unix`` class to get much of the work done automatically."
msgstr ""
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 ""
#, fuzzy
msgid "**detect.py file**"
msgstr "**Tekstuurisuodatus:**"
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 ""
msgid "All methods should be implemented within ``detect.py`` as follows:"
msgstr ""
msgid ""
"``is_active()``: Can be used to temporarily disable building for a platform. "
"This should generally always return ``True``."
msgstr ""
msgid "``get_name()``: Returns the platform's user-visible name as a string."
msgstr ""
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 ""
msgid ""
"``get_opts()``: Returns the list of SCons build options that can be defined "
"by the user for this platform."
msgstr ""
msgid ""
"``get_flags()``: Returns the list of overridden SCons flags for this "
"platform."
msgstr ""
msgid ""
"``configure()``: Perform build configuration, such as selecting compiler "
"options depending on SCons options chosen."
msgstr ""
msgid "Optional features of a platform port"
msgstr ""
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 ""
msgid ""
"*Some links on this list point to the Linux/\\*BSD platform implementation "
"as a reference.*"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
#, fuzzy
msgid ""
"`Text-to-speech driver <https://github.com/godotengine/godot/blob/master/"
"platform/linuxbsd/tts_linux.cpp>`__ (for accessibility)."
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
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 ""
msgid ""
"If the target platform doesn't support running Vulkan, OpenGL 3.3 or OpenGL "
"ES 3.0, you have two options:"
msgstr ""
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 ""
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 ""
msgid "Distributing a custom platform port"
msgstr ""
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 ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,167 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Custom resource format loaders"
msgstr ""
msgid "Introduction"
msgstr "Johdanto"
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 ""
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 ""
msgid "References"
msgstr ""
msgid ":ref:`ResourceLoader<class_resourceloader>`"
msgstr ""
msgid ""
"`core/io/resource_loader.cpp <https://github.com/godotengine/godot/blob/"
"master/core/io/resource_loader.cpp>`_"
msgstr ""
msgid "What for?"
msgstr ""
msgid "Adding new support for many file formats"
msgstr ""
msgid "Audio formats"
msgstr ""
msgid "Video formats"
msgstr ""
msgid "Machine learning models"
msgstr ""
msgid "What not?"
msgstr ""
msgid "Raster images"
msgstr ""
msgid "ImageFormatLoader should be used to load images."
msgstr ""
msgid ""
"`core/io/image_loader.h <https://github.com/godotengine/godot/blob/master/"
"core/io/image_loader.h>`_"
msgstr ""
msgid "Creating a ResourceFormatLoader"
msgstr ""
msgid ""
"Each file format consist of a data container and a ``ResourceFormatLoader``."
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Creating a ResourceFormatSaver"
msgstr "TileSet-solmun luonti"
msgid ""
"If you'd like to be able to edit and save a resource, you can implement a "
"``ResourceFormatSaver``:"
msgstr ""
msgid "Creating custom data types"
msgstr "Mukautettujen tietotyyppien luonti"
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 ""
#, fuzzy
msgid "Here is an example of creating a custom datatype:"
msgstr "Tässä esimerkki skeleton-solmusta kahdella luulla:"
msgid "Considerations"
msgstr ""
msgid ""
"Some libraries may not define certain common routines such as IO handling. "
"Therefore, Godot call translations are required."
msgstr ""
msgid ""
"For example, here is the code for translating ``FileAccess`` calls into "
"``std::istream``."
msgstr ""
msgid "`istream <https://cplusplus.com/reference/istream/istream/>`_"
msgstr ""
msgid ""
"`streambuf <https://cplusplus.com/reference/streambuf/streambuf/?"
"kw=streambuf>`_"
msgstr ""
#, fuzzy
msgid ""
"`core/io/file_access.h <https://github.com/godotengine/godot/blob/master/"
"core/os/file_access.h>`_"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Registering the new file format"
msgstr ""
msgid ""
"Godot registers ``ResourcesFormatLoader`` with a ``ResourceLoader`` handler. "
"The handler selects the proper loader automatically when ``load`` is called."
msgstr ""
msgid "Loading it on GDScript"
msgstr ""
msgid ""
"Save a file called ``demo.json`` with the following contents and place it in "
"the project's root folder:"
msgstr ""
#, fuzzy
msgid "Then attach the following script to any node::"
msgstr "Lisää sitten seuraavat kaksi funktiota:"
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,30 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Godot's architecture diagram"
msgstr ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,46 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Engine core and modules"
msgstr "Lisäsolmujen lisäys"
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 ""
msgid "Getting started with Godot's source code"
msgstr ""
msgid ""
"This section covers the basics that you will encounter in (almost) every "
"source file."
msgstr ""
msgid "Extending Godot by modifying its source code"
msgstr ""
msgid ""
"This section covers what you can do by modifying Godot's C++ source code."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,43 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Inheritance class tree"
msgstr ""
msgid "Object"
msgstr ""
msgid "Reference"
msgstr ""
msgid "Control"
msgstr ""
msgid "Node2D"
msgstr ""
#, fuzzy
msgid "Node3D"
msgstr "Solmut"
msgid "Source files: :download:`class_tree.zip <files/class_tree.zip>`."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,323 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Object class"
msgstr ""
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 ""
msgid "General definition"
msgstr ""
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 ""
msgid "This makes Objects gain a lot of functionality, like for example"
msgstr ""
msgid "References:"
msgstr ""
#, fuzzy
msgid ""
"`core/object/object.h <https://github.com/godotengine/godot/blob/master/core/"
"object/object.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Registering an Object"
msgstr ""
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 ""
msgid "Classes are registered by calling:"
msgstr ""
msgid ""
"Registering it will allow the class to be instanced by scripts, code, or "
"creating them again when deserializing."
msgstr ""
msgid "Registering as virtual is the same but it can't be instanced."
msgstr ""
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 ""
msgid ""
"Inside ``_bind_methods``, there are a couple of things that can be done. "
"Registering functions is one:"
msgstr ""
msgid "Default values for arguments can be passed in reverse order:"
msgstr ""
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 ""
msgid "Check ``_bind_methods`` of Control or Object for more examples."
msgstr ""
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 ""
#, fuzzy
msgid ""
"`core/object/class_db.h <https://github.com/godotengine/godot/blob/master/"
"core/object/class_db.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Constants"
msgstr "Vakiot"
msgid "Classes often have enums such as:"
msgstr ""
msgid ""
"For these to work when binding to methods, the enum must be declared "
"convertible to int, for this a macro is provided:"
msgstr ""
msgid "The constants can also be bound inside ``_bind_methods``, by using:"
msgstr ""
msgid "Properties (set/get)"
msgstr ""
msgid "Objects export properties, properties are useful for the following:"
msgstr ""
msgid "Serializing and deserializing the object."
msgstr ""
msgid "Creating a list of editable values for the Object derived class."
msgstr ""
msgid ""
"Properties are usually defined by the PropertyInfo() class. Usually "
"constructed as:"
msgstr ""
msgid "For example:"
msgstr ""
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 ""
msgid "Another example:"
msgstr ""
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 ""
msgid ""
"There are plenty of hints and usage flags available in object.h, give them a "
"check."
msgstr ""
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 ""
msgid ""
"From ``_bind_methods()``, properties can be created and bound as long as set/"
"get functions exist. Example:"
msgstr ""
msgid "This creates the property using the setter and the getter."
msgstr ""
msgid "Binding properties using ``_set``/``_get``/``_get_property_list``"
msgstr ""
msgid ""
"An additional method of creating properties exists when more flexibility is "
"desired (i.e. adding or removing properties on context)."
msgstr ""
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 ""
msgid ""
"This is also a little less efficient since ``p_property`` must be compared "
"against the desired names in serial order."
msgstr ""
msgid "Dynamic casting"
msgstr ""
msgid ""
"Godot provides dynamic casting between Object-derived classes, for example:"
msgstr ""
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 ""
msgid "Signals"
msgstr "Signaalit"
msgid ""
"Objects can have a set of signals defined (similar to Delegates in other "
"languages). This example shows how to connect to them:"
msgstr ""
msgid ""
"The method ``_node_entered_tree`` must be registered to the class using "
"``ClassDB::bind_method`` (explained before)."
msgstr ""
msgid ""
"Adding signals to a class is done in ``_bind_methods``, using the "
"``ADD_SIGNAL`` macro, for example:"
msgstr ""
msgid "Notifications"
msgstr "Ilmoitukset (notifications)"
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 ""
msgid "References"
msgstr ""
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 ""
msgid ""
"``myref`` is reference counted. It will be freed when no more Ref<> "
"templates point to it."
msgstr ""
#, fuzzy
msgid ""
"`core/object/reference.h <https://github.com/godotengine/godot/blob/master/"
"core/object/ref_counted.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Resources:"
msgstr "Resurssit:"
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 ""
msgid "Resources without a path are fine too."
msgstr ""
#, fuzzy
msgid ""
"`core/io/resource.h <https://github.com/godotengine/godot/blob/master/core/"
"io/resource.h>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid "Resource loading"
msgstr ""
msgid "Resources can be loaded with the ResourceLoader API, like this:"
msgstr ""
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 ""
msgid "resourceinteractiveloader (TODO)"
msgstr ""
#, fuzzy
msgid ""
"`core/io/resource_loader.h <https://github.com/godotengine/godot/blob/master/"
"core/io/resource_loader.h>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid "Resource saving"
msgstr ""
msgid "Saving a resource can be done with the resource saver API:"
msgstr ""
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 ""
#, fuzzy
msgid ""
"`core/io/resource_saver.h <https://github.com/godotengine/godot/blob/master/"
"core/io/resource_saver.h>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,478 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Unit testing"
msgstr "Editorin ikonit"
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 ""
#, fuzzy
msgid "Platform and target support"
msgstr "Alustatuki"
msgid ""
"C++ unit tests can be run on Linux, macOS, and Windows operating systems."
msgstr ""
msgid ""
"Tests can only be run with editor ``tools`` enabled, which means that export "
"templates cannot be tested currently."
msgstr ""
#, fuzzy
msgid "Running tests"
msgstr "Skenen pystytys"
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 ""
msgid ""
"Once the build is done, run the tests with a ``--test`` command-line option:"
msgstr ""
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 ""
msgid ""
"Any other options and arguments after the ``--test`` command are treated as "
"arguments for doctest."
msgstr ""
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 ""
msgid "Filtering tests"
msgstr ""
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 ""
msgid ""
"The wildcard syntax ``*`` is supported for matching any number of characters "
"in test suites, test cases, and source file names:"
msgstr ""
#, fuzzy
msgid "**Filter options**"
msgstr "Yleiset ominaisuudet"
msgid "**Shorthand**"
msgstr ""
#, fuzzy
msgid "**Examples**"
msgstr "Vihollisen skripti"
#, fuzzy
msgid "``--test-suite``"
msgstr "``x.attribute``"
msgid "``-ts``"
msgstr ""
msgid "``-ts=\"*[GDScript]*\"``"
msgstr ""
msgid "``--test-case``"
msgstr ""
msgid "``-tc``"
msgstr ""
msgid "``-tc=\"*[String]*\"``"
msgstr ""
#, fuzzy
msgid "``--source-file``"
msgstr "``ext_resource``"
msgid "``-sf``"
msgstr ""
msgid "``-sf=\"*test_color*\"``"
msgstr ""
msgid "For instance, to run only the ``String`` unit tests, run:"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Writing tests"
msgstr "Varoitusjärjestelmä"
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 ""
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 ""
msgid "Here's a minimal working test suite with a single test case written:"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Assertions"
msgstr "**Kuvaus**"
msgid ""
"A list of all commonly used assertions used throughout the Godot tests, "
"sorted by severity."
msgstr ""
#, fuzzy
msgid "**Assertion**"
msgstr "**Kuvaus**"
msgid "**Description**"
msgstr "**Kuvaus**"
msgid "``REQUIRE``"
msgstr ""
msgid ""
"Test if condition holds true. Fails the entire test immediately if the "
"condition does not hold true."
msgstr ""
msgid "``REQUIRE_FALSE``"
msgstr ""
msgid ""
"Test if condition does not hold true. Fails the entire test immediately if "
"the condition holds true."
msgstr ""
msgid "``CHECK``"
msgstr ""
msgid ""
"Test if condition holds true. Marks the test run as failing, but allow to "
"run other assertions."
msgstr ""
msgid "``CHECK_FALSE``"
msgstr ""
msgid ""
"Test if condition does not hold true. Marks the test run as failing, but "
"allow to run other assertions."
msgstr ""
msgid "``WARN``"
msgstr ""
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 ""
msgid "``WARN_FALSE``"
msgstr ""
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 ""
msgid ""
"All of the above assertions have corresponding ``*_MESSAGE`` macros, which "
"allow to print optional message with rationale of what should happen."
msgstr ""
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 ""
msgid ""
"`doctest: Assertion macros <https://github.com/onqtam/doctest/blob/master/"
"doc/markdown/assertions.md>`_."
msgstr ""
msgid "Logging"
msgstr ""
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 ""
msgid "**Macro**"
msgstr ""
msgid "``MESSAGE``"
msgstr ""
msgid "Prints a message."
msgstr ""
msgid "``FAIL_CHECK``"
msgstr ""
msgid ""
"Marks the test as failing, but continue the execution. Can be wrapped in "
"conditionals for complex checks."
msgstr ""
msgid "``FAIL``"
msgstr ""
msgid ""
"Fails the test immediately. Can be wrapped in conditionals for complex "
"checks."
msgstr ""
msgid ""
"Different reporters can be chosen at run-time. For instance, here's how the "
"output can be redirected to a XML file:"
msgstr ""
msgid ""
"`doctest: Logging macros <https://github.com/onqtam/doctest/blob/master/doc/"
"markdown/logging.md>`_."
msgstr ""
#, fuzzy
msgid "Testing failure paths"
msgstr "Animaation ohjaaminen"
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 ""
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 ""
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 ""
#, fuzzy
msgid "Test tools"
msgstr "2D työkalut"
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 ""
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 ""
msgid ""
"If any such tool is detected, then the rest of the unit tests are skipped."
msgstr ""
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 ""
msgid ""
"Here's an example of how GDScript registers test tools in ``modules/gdscript/"
"register_types.cpp``:"
msgstr ""
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 ""
msgid "Integration tests for GDScript"
msgstr ""
msgid ""
"Godot uses doctest to prevent regressions in GDScript during development. "
"There are several types of test scripts which can be written:"
msgstr ""
msgid "tests for expected errors;"
msgstr ""
msgid "tests for warnings;"
msgstr ""
#, fuzzy
msgid "tests for features."
msgstr "Ominaisuudet"
msgid ""
"Therefore, the process of writing integration tests for GDScript is the "
"following:"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Here's an example test script:"
msgstr "Tässä esimerkki skeleton-solmusta kahdella luulla:"
msgid ""
"Generate ``*.out`` files to update the expected results from the output:"
msgstr ""
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 ""
#, fuzzy
msgid "Run GDScript tests with:"
msgstr "Vienti GDScripteistä"
msgid "This also accepts the ``--print-filenames`` option (see above)."
msgstr ""
msgid "If no errors are printed and everything goes well, you're done!"
msgstr ""
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 ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,120 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Variant class"
msgstr ""
msgid "About"
msgstr "Tietoja"
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 ""
msgid "A Variant can:"
msgstr ""
msgid "Store almost any datatype"
msgstr ""
msgid ""
"Perform operations between many variants (GDScript uses Variant as its "
"atomic/native datatype)."
msgstr ""
msgid "Be hashed, so it can be compared quickly to other variants"
msgstr ""
msgid "Be used to convert safely between datatypes"
msgstr ""
msgid ""
"Be used to abstract calling methods and their arguments (Godot exports all "
"its functions through variants)"
msgstr ""
msgid "Be used to defer calls or move data between threads."
msgstr ""
msgid "Be serialized as binary and stored to disk, or transferred via network."
msgstr ""
msgid ""
"Be serialized to text and use it for printing values and editable settings."
msgstr ""
msgid "Work as an exported property, so the editor can edit it universally."
msgstr ""
msgid "Be used for dictionaries, arrays, parsers, etc."
msgstr ""
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 ""
msgid "References:"
msgstr ""
#, fuzzy
msgid ""
"`core/variant/variant.h <https://github.com/godotengine/godot/blob/master/"
"core/variant/variant.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Containers: Dictionary and Array"
msgstr ""
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 ""
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 ""
msgid ""
"Copy-on-write (COW) mode support for containers was dropped with Godot 3.0."
msgstr ""
#, fuzzy
msgid ""
"`core/variant/dictionary.h <https://github.com/godotengine/godot/blob/master/"
"core/variant/dictionary.h>`__"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
#, fuzzy
msgid ""
"`core/variant/array.h <https://github.com/godotengine/godot/blob/master/core/"
"variant/array.h>`__"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,155 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "C++ usage guidelines"
msgstr "Yleiset eroavaisuudet"
msgid "Rationale"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "See :ref:`doc_code_style_guidelines` for formatting guidelines."
msgstr ""
#, fuzzy
msgid "Disallowed features"
msgstr "Ominaisuudet"
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 ""
#, fuzzy
msgid "Standard Template Library"
msgstr "Miksi Godot ei käytä STL:ää (Standard Template Library)?"
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 ""
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 ""
msgid "Use ``String`` instead of ``std::string``."
msgstr ""
msgid ""
"Use ``Vector`` instead of ``std::vector``. In some cases, ``LocalVector`` "
"can be used as an alternative (ask core developers first)."
msgstr ""
msgid "Use ``Array`` instead of ``std::array``."
msgstr ""
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 ""
msgid "``auto`` keyword"
msgstr ""
msgid ""
"Please don't use the ``auto`` keyword for type inference. While it can avoid "
"repetition, it can also lead to confusing code:"
msgstr ""
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 ""
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 ""
msgid "Lambdas"
msgstr ""
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 ""
msgid "``#pragma once`` directive"
msgstr ""
msgid ""
"To follow the existing style, please use standard ``#ifdef``-based include "
"guards instead of ``#pragma once`` in new files."
msgstr ""
msgid ""
"See :ref:`doc_code_style_guidelines_header_includes` for guidelines on "
"sorting includes in C++ and Objective-C files."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,62 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Debugging and profiling"
msgstr "Projektin valmistelu"
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 ""
#, fuzzy
msgid "Debugging the editor"
msgstr "Projektin valmistelu"
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 ""
msgid "For example, using ``gdb`` directly, you may do this:"
msgstr ""
msgid ""
"You can also run the editor directly from your project's folder. In that "
"case, only the ``-e`` option is required."
msgstr ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,55 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Debugging on macOS"
msgstr "Projektin valmistelu"
#, fuzzy
msgid "Debugging Godot editor"
msgstr "Projektin valmistelu"
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 ""
msgid ""
"Create an ``editor.entitlements`` text file with the following contents:"
msgstr ""
#, fuzzy
msgid "Then use the following command to re-sign the editor::"
msgstr "Lisää sitten seuraavat kaksi funktiota:"
#, fuzzy
msgid "Debugging exported project"
msgstr "Projektin valmistelu"
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,262 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Using C++ profilers"
msgstr "Välilyöntien käyttö"
msgid ""
"To optimize Godot's performance, you need to know what to optimize first. To "
"this end, profilers are useful tools."
msgstr ""
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 ""
#, fuzzy
msgid "Recommended profilers"
msgstr "Ulkoiset resurssit"
msgid "`VerySleepy <http://www.codersnotes.com/sleepy/>`__ (Windows only)"
msgstr ""
msgid "`HotSpot <https://github.com/KDAB/hotspot>`__ (Linux only)"
msgstr ""
msgid "`Xcode Instruments <https://developer.apple.com/xcode/>`__ (macOS only)"
msgstr ""
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 ""
msgid "Setting up Godot"
msgstr "Godotin asennus"
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 ""
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 ""
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 ""
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 ""
msgid "Benchmarking startup/shutdown times"
msgstr ""
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 ""
msgid ""
"See :ref:`doc_command_line_tutorial` for more command line arguments "
"supported by Godot."
msgstr ""
msgid "Profiler-specific instructions"
msgstr ""
msgid "VerySleepy"
msgstr ""
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 ""
msgid ""
"Open VerySleepy and select the Godot executable in the list of processes on "
"the left:"
msgstr ""
msgid "Click the **Profile All** button on the right to start profiling."
msgstr ""
msgid ""
"Perform the actions you wish to profile in the editor or project. When "
"you're done, click **Stop** (*not* Abort)."
msgstr ""
msgid "Wait for the results window to appear."
msgstr ""
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 ""
#, fuzzy
msgid "Your results window should now look something like this:"
msgstr "Lopullisen luurankosi pitäisi näyttää kutakuinkin tältä:"
msgid "HotSpot"
msgstr ""
msgid "Open HotSpot. Click **Record Data**:"
msgstr ""
msgid ""
"In the next window, specify the path to the Godot binary that includes debug "
"symbols."
msgstr ""
msgid ""
"Specify command line arguments to run a specific project, with or without "
"the editor."
msgstr ""
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 ""
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 ""
msgid ""
"Click **Start Recording** and perform the actions you wish to profile in the "
"editor/project."
msgstr ""
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 ""
msgid ""
"Click **View Results** and wait for the profiling visualization to be "
"generated:"
msgstr ""
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 ""
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 ""
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 ""
msgid ""
"This process attachment-based workflow is similar to the one used by "
"VerySleepy."
msgstr ""
msgid "Xcode Instruments"
msgstr ""
msgid ""
"Open Xcode. Select **Open Developer Tool** - **Instruments** from the "
"**Xcode** app menu:"
msgstr ""
msgid "Double-click on **Time Profiler** in the **Instruments** window:"
msgstr ""
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 ""
msgid ""
"You can also attach the Time Profiler to a running process by selecting it "
"from the **Target** menu."
msgstr ""
msgid ""
"Click the **Start an immediate mode recording** button to start profiling."
msgstr ""
msgid ""
"Perform the actions you wish to profile in the editor or project. When "
"you're done, click the **Stop** button."
msgstr ""
msgid "Wait for the results to appear."
msgstr ""
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 ""
msgid ""
"Select **Hide system libraries** in the **Call Tree** menu (at the bottom of "
"window) to remove external modules."
msgstr ""
msgid ""
"You can use the timeline at the top of the window to display details for the "
"specific time period."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,254 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Using sanitizers"
msgstr "Mukautettujen Container-tyyppien luonti"
msgid "What are sanitizers?"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Using sanitizers on Godot"
msgstr "Sisäänrakennettu teemaeditori."
msgid ""
"Sanitizers **require** recompiling the binary. This means you cannot use "
"official Godot binaries to run sanitizers."
msgstr ""
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 ""
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 ""
msgid ""
"Certain options can be passed to sanitizers without having to recompile the "
"binary using environment variables."
msgstr ""
msgid "Address sanitizer (ASAN)"
msgstr ""
msgid "Available in Clang and GCC."
msgstr ""
msgid "**Supported platforms:** Linux, macOS, Windows (Visual Studio), Web"
msgstr ""
msgid ""
"`Clang ASAN documentation <https://clang.llvm.org/docs/AddressSanitizer."
"html>`__"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Leak sanitizer (LSAN)"
msgstr ""
#, fuzzy
msgid "**Supported platforms:** Linux, Web"
msgstr "Tukee kaikkia alustoja."
msgid ""
"`Clang LSAN documentation <https://clang.llvm.org/docs/LeakSanitizer.html>`__"
msgstr ""
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 ""
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 ""
msgid "Memory sanitizer (MSAN)"
msgstr ""
msgid "Available in Clang only, not GCC."
msgstr ""
#, fuzzy
msgid "**Supported platforms:** Linux"
msgstr "Tukee kaikkia alustoja."
msgid ""
"`Clang MSAN documentation <https://clang.llvm.org/docs/MemorySanitizer."
"html>`__"
msgstr ""
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 ""
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 ""
msgid "Thread sanitizer (TSAN)"
msgstr ""
#, fuzzy
msgid "**Supported platforms:** Linux, macOS"
msgstr "Tukee kaikkia alustoja."
msgid ""
"`Clang TSAN documentation <https://clang.llvm.org/docs/ThreadSanitizer."
"html>`__"
msgstr ""
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 ""
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 ""
msgid "Undefined behavior sanitizer (UBSAN)"
msgstr ""
#, fuzzy
msgid "**Supported platforms:** Linux, macOS, Web"
msgstr "Tukee kaikkia alustoja."
msgid ""
"`Clang UBSAN documentation <https://clang.llvm.org/docs/"
"UndefinedBehaviorSanitizer.html>`__"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Platform-specific sanitizers"
msgstr "Alustakohtaista"
msgid "Web"
msgstr "Web"
msgid ""
"When :ref:`compiling for the Web <doc_compiling_for_web>`, there are 2 "
"additional sanitizer SCons options available:"
msgstr ""
msgid ""
"``use_assertions=yes`` enables runtime Emscripten assertions, which can "
"catch various issues."
msgstr ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,24 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Vulkan"
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,194 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Validation layers"
msgstr "Animaatiotoistin (AnimationPlayer)"
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 ""
msgid ""
"Enabling validation layers has a performance impact, so only enable them "
"when you actually need the output to debug the application."
msgstr ""
msgid "Windows"
msgstr "Windows"
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 ""
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 ""
msgid "macOS"
msgstr "macOS"
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 ""
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 ""
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 ""
#, fuzzy
msgid "Linux, \\*BSD"
msgstr "X11 (Linux, \\*BSD)"
msgid "Install Vulkan validation layers from your distribution's repositories:"
msgstr ""
#, fuzzy
msgid "Alpine Linux"
msgstr "**Työpöytä:** Windows, macOS, Linux"
msgid "Arch Linux"
msgstr ""
msgid "Debian/Ubuntu"
msgstr ""
msgid "Fedora"
msgstr ""
msgid "FreeBSD"
msgstr ""
msgid "Gentoo"
msgstr ""
msgid "Mageia"
msgstr ""
msgid "OpenBSD"
msgstr ""
msgid "openSUSE"
msgstr ""
msgid "Solus"
msgstr ""
msgid ""
"You don't need to reboot after installing the validation layers, but you may "
"need to close and reopen your current terminal."
msgstr ""
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 ""
msgid "Android"
msgstr "Android"
msgid ""
"After enabling validation layers on Android, a developer can see errors and "
"warning messages in the ``adb logcat`` output."
msgstr ""
msgid "iOS"
msgstr "iOS"
msgid "Validation layers are currently **not** supported on iOS."
msgstr ""
msgid "Web"
msgstr "Web"
msgid ""
"Validation layers are **not** supported on the web platform, as there is no "
"support for Vulkan there."
msgstr ""
msgid "Enabling validation layers"
msgstr ""
msgid "Build validation layers from official sources"
msgstr ""
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 ""
msgid "Copy libraries"
msgstr ""
msgid ""
"Copy libraries from ``Vulkan-ValidationLayers/build-android/libs`` to "
"``godot/platform/android/java/app/libs/debug/vulkan_validation_layers``."
msgstr ""
msgid ""
"Your Godot source directory tree should look like on the example below::"
msgstr ""
msgid ""
"If the subdirectory ``libs/debug/vulkan_validation_layers`` doesn't exist, "
"create it."
msgstr ""
#, fuzzy
msgid "Compile and run the Android app"
msgstr "Android-liitännäisten luonti"
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,163 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Editor icons"
msgstr "Editorin ikonit"
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 ""
msgid "Creating icons"
msgstr "Ikonien luominen"
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 ""
msgid "Clone the ``godot`` repository containing all the editor icons:"
msgstr ""
msgid ""
"The icons must be created in a vector graphics editor in SVG format. There "
"are two main requirements to follow:"
msgstr ""
msgid ""
"Icons must be 16×16. In Inkscape, you can configure the document size in "
"**File > Document Properties**."
msgstr ""
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 ""
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 ""
msgid "Color conversion for light editor themes"
msgstr ""
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 ""
msgid "Icon optimization"
msgstr "Ikonin optimointi"
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Integrating and sharing the icons"
msgstr ""
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 ""
"Jos osallistut itse moottoriin, sinun on tehtävä muutospyyntö lisätä "
"optimoidut kuvakkeet päävaraston ''editor/icons'' -kohtaan. Käännä moottori "
"uudelleen, jotta se poimii uusia kuvakkeita luokille."
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 ""
"On myös mahdollista luoda mukautettuja kuvakkeita moduulin sisällä. Jos luot "
"oman moduulin etkä aio integroida sitä Godotiin, sinun ei tarvitse tehdä "
"erillistä muutospyyntöä, jotta kuvakkeesi ovat saatavilla muokkaimessa, "
"koska ne voivat olla itsenäisiä."
msgid ""
"For specific instructions on how to create module icons, refer to :ref:"
"`Creating custom module icons<doc_custom_module_icons>`."
msgstr ""
msgid "Troubleshooting"
msgstr "Ongelmien ratkonta"
msgid "If icons don't appear in the editor, make sure that:"
msgstr ""
msgid ""
"Each icon's filename matches the naming requirement as described previously."
msgstr ""
msgid ""
"``modules/svg`` is enabled (it should be enabled by default). Without it, "
"icons won't appear in the editor at all."
msgstr ""
msgid "References"
msgstr ""
msgid ""
"`editor/icons <https://github.com/godotengine/godot/tree/master/editor/"
"icons>`__"
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,178 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Editor style guide"
msgstr "Editorin ikonit"
msgid "Introduction"
msgstr "Johdanto"
msgid "Thanks for your interest in contributing to the Godot editor!"
msgstr ""
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 ""
#, fuzzy
msgid "Writing style"
msgstr "Varoitusjärjestelmä"
msgid ""
"**Write messages (errors, warnings, ...) as full sentences.** They should "
"start with an uppercase letter and end with a period."
msgstr ""
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 ""
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 ""
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 ""
msgid ""
"Try to follow the :ref:`doc_docs_writing_guidelines` in addition to the "
"guidelines outlined above."
msgstr ""
msgid "Button and menu texts"
msgstr ""
msgid "Capitalize text in buttons and menu actions:"
msgstr ""
msgid "**Good:** *Open Editor Data Folder*"
msgstr ""
msgid "**Bad:** *Open editor data folder*"
msgstr ""
msgid ""
"If a menu action opens a modal dialog, suffix it with an ellipsis (``...``)."
msgstr ""
msgid "**Good:** *Editor Settings...*"
msgstr ""
#, fuzzy
msgid "**Bad:** *Editor Settings*"
msgstr "Editorin ikonit"
#, fuzzy
msgid "Inspector sections"
msgstr ":ref:`doc_inspector_plugins`"
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 ""
msgid ""
"There are some valid exceptions for this, such as material features in :ref:"
"`class_StandardMaterial3D`."
msgstr ""
msgid "This advice also applies to the Project Settings and Editor Settings."
msgstr ""
#, fuzzy
msgid "Inspector performance hints"
msgstr ":ref:`doc_inspector_plugins`"
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 ""
msgid "**Screen-space antialiasing:** *Disabled (Fastest), FXAA (Fast)*"
msgstr ""
msgid ""
"**MSAA quality:** *Disabled (Fastest), 2x (Fast), 4x (Average), 8x (Slow), "
"16x (Slower)*"
msgstr ""
msgid ""
"**DirectionalLight mode:** *Orthogonal (Fast), PSSM 2 Splits (Average), PSSM "
"4 Splits (Slow)*"
msgstr ""
msgid ""
"For consistency, try to stick to the terms below (from fastest to slowest):"
msgstr ""
msgid "*Fastest, Faster, Fast, Average, Slow, Slower, Slowest*"
msgstr ""
msgid ""
"Their usage doesn't have to be contiguous. For example, you can use only "
"\"Fast\" and \"Slow\" from the list above."
msgstr ""
msgid ""
"If you're adding a new enum, its values should be ordered from the fastest "
"option to the slowest option."
msgstr ""
#, fuzzy
msgid "Tooltips"
msgstr "Työkalut"
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 ""
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 ""
msgid ""
"Tooltips should follow the writing style described above. In addition to "
"this, use indicative mood instead of imperative mood:"
msgstr ""
msgid "**Good:** *Computes global illumination for the selected GIProbe.*"
msgstr ""
msgid "**Bad:** *Compute global illumination for the selected GIProbe.*"
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,24 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Editor development"
msgstr "Editorin kehitys"
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,162 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Introduction to editor development"
msgstr "Johdanto vienteihin"
msgid "On this page, you will learn:"
msgstr ""
msgid "The **design decisions** behind the Godot editor."
msgstr ""
msgid "How to work efficiently on the Godot editor's C++ code."
msgstr ""
msgid ""
"This guide is aimed at current or future engine contributors. To create "
"editor plugins in GDScript, see :ref:`doc_making_plugins` instead."
msgstr ""
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 ""
#, fuzzy
msgid "Technical choices"
msgstr "Tekninen yleiskatsaus"
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 ""
msgid ""
"The editor is fully written in C++. It can't contain any GDScript or C# code."
msgstr ""
#, fuzzy
msgid "Directory structure"
msgstr "Tiedoston rakenne"
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 ""
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 ""
msgid "Some important files in the editor are:"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Editor dependencies in ``scene/`` files"
msgstr ""
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 ""
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 ""
msgid ""
"To make the codebase easier to follow and more self-contained, the allowed "
"dependency order is:"
msgstr ""
msgid "``editor/`` -> ``scene/`` -> ``servers/`` -> ``core/``"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Development tips"
msgstr "Kehitys"
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,38 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "GDScript grammar"
msgstr "GDScript"
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,24 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Godot file formats"
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,666 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "TSCN file format"
msgstr "TSCN-tiedostomuoto"
#, fuzzy
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 ""
":code:`.tscn` tiedostomuoto tulee sanoista \"Text SCeNe\" ja yksi tiedosto "
"edustaa yhtä skenepuuta Godotissa. TSCN-tiedostoilla on se etu, että ne ovat "
"lähes täysin ihmisen luettavissa ja helppoja hallita "
"versionhallintajärjestelmissä. TSCN-tiedostojen tuonnin aikana ne "
"käännetään :code:`.scn` binääritiedostoiksi ja tallennetaan .import "
"kansioon. Tämä pienentää datakokoa ja nopeuttaa lataamista."
#, fuzzy
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 ""
":code:`.escn` tiedostot ovat identtisiä TSCN-tiedostoihin nähden, mutta "
"niitä käytetään ilmaisemaan Godotille, että tiedosto on tuotu toisesta "
"ohjelmasta, eikä käyttäjän tule voida muokata sitä Godotissa."
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 ""
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 ""
"Jos etsit täydellistä kuvausta, jäsennys on käsitelty tiedostossa "
"`resource_format_text.cpp <https://github.com/godotengine/godot/blob/master/"
"scene/resources/resource_format_text.cpp>`_, luokassa "
"``ResourceFormatLoaderText``."
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 ""
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 ""
msgid ""
"Scenes and resources saved with Godot 4.x contain ``format=3`` in their "
"header, whereas Godot 3.x uses ``format=2`` instead."
msgstr ""
msgid "File structure"
msgstr "Tiedoston rakenne"
msgid "There are five main sections inside the TSCN file:"
msgstr "TSCN-tiedosto sisältää viisi pääosiota:"
#, fuzzy
msgid "File descriptor"
msgstr "Tiedoston kuvaus"
msgid "External resources"
msgstr "Ulkoiset resurssit"
msgid "Internal resources"
msgstr "Sisäiset resurssit"
msgid "Nodes"
msgstr "Solmut"
msgid "Connections"
msgstr ""
#, fuzzy
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 ""
"Tiedoston kuvaus on muotoa :code:`[gd_scene load_steps=1 format=2]` ja sen "
"tulee sijaita tiedostossa ensimmäisenä. Parametrin load_steps pitäisi "
"(teoriassa) olla tiedoston sisältämien resurssien lukumäärä, joskaan sillä "
"ei käytännössä tunnu olevan väliä."
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 ""
#, fuzzy
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 ""
"Näiden osioiden tulisi esiintyä järjestyksessä, mutta niiden erottelu voi "
"olla hankalaa. Ainoa ero niiden välillä on otsikon ensimmäinen elementti, "
"joka on yhdistävä tekijä kaikille osion muille kohdille. Esimerkiksi "
"kaikkien ulkoisten resurssien otsikoiden pitäisi alkaa "
"``[ext_resource .....]``."
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 ""
msgid "Entries inside the file"
msgstr "Tiedoston kohdat"
#, fuzzy
msgid ""
"A heading looks like ``[<resource_type> key1=value1 key2=value2 "
"key3=value3 ...]`` where resource_type is one of:"
msgstr ""
"Otsikko on muotoa :code:`[<resource_type> key=value key=value "
"key=value ...]`, missä resource_type on jokin seuraavista:"
msgid "``ext_resource``"
msgstr "``ext_resource``"
msgid "``sub_resource``"
msgstr "``sub_resource`` (aliresurssi)"
msgid "``node``"
msgstr "``node`` (solmu)"
msgid "``connection``"
msgstr "``connection`` (yhteys)"
#, fuzzy
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 ""
"Kunkin otsikon alla voi olla vapaavalintainen määrä :code:`key = value` "
"(avain-arvo) pareja. Arvot voivat olla monimutkaisia tietotyyppejä, kuten "
"taulukoita, muunnoksia, värejä ja niin edelleen. Esimerkiksi tilasolmu "
"(spatial node) näyttää tältä:"
msgid "The scene tree"
msgstr "Skenepuu"
#, fuzzy
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 ""
"Skenepuu koostuu... solmuista! Kunkin solmun otsikko sisältää solmun nimen, "
"yläsolmun nimen ja (yleensä) tyypin. Esimerkiksi :code:`[node "
"type=\"Camera\" name=\"PlayerCamera\" parent=\"Player/Head\"]`"
msgid "Other valid keywords include:"
msgstr "Muita avainsanoja ovat:"
msgid "``instance``"
msgstr "``instance`` (ilmentymä)"
msgid "``instance_placeholder``"
msgstr "``instance_placeholder`` (ilmentymän paikanpitäjä)"
msgid "``owner``"
msgstr "``owner``"
msgid ""
"``index`` (sets the order of appearance in the tree; if absent, inherited "
"nodes will take precedence over plain ones)"
msgstr ""
msgid "``groups``"
msgstr "``groups``"
#, fuzzy
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 ""
"Tiedoston ensimmäisessä solmussa, joka on myös skenen juurisolmu, ei tule "
"olla ``parent=Path/To/Node`` merkintää otsikossa. Kaikissa skenetiedostoissa "
"tulee olla tasan *yksi* juurisolmu. Jos näin ei ole, Godot ei pysty tuomaan "
"tiedostoa. Muiden solmujen yläsolmujen polkujen tulee olla absoluuttisia, "
"eikä niiden tule sisältää skenen juuren nimeä. Jos solmut sijaitsevat "
"suoraan skenen juuren alla, niiden polkujen tulee olla ``\".\"``. Tässä on "
"esimerkki skenepuusta (ilman solmusisältöä):"
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 ""
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 ""
msgid "NodePath"
msgstr ""
#, fuzzy
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 ""
"Koska puurakenne on riittämätön kuvaamaan koko skeneä, Godot käyttää :code:"
"`NodePath(Path/To/Node)` rakennetta viittaamaan toiseen solmuun tai "
"attribuuttiin missä tahansa skenepuussa. Esimerkkinä tyypillisistä "
"käyttötapauksista NodePath-rakenteelle, mesh-solmu käyttää :code:"
"`NodePath()` rakennetta osoittamaan luurankomalliin ja animaatioraita "
"käyttää :code:`NodePath()` rakennetta osoittamaan solmun animoitavaa "
"attribuuttia."
#, fuzzy
msgid ""
"For instance, MeshInstance3D uses ``NodePath()`` to point to its skeleton. "
"Likewise, Animation tracks use ``NodePath()`` to point to node properties to "
"animate."
msgstr ""
"Koska puurakenne on riittämätön kuvaamaan koko skeneä, Godot käyttää :code:"
"`NodePath(Path/To/Node)` rakennetta viittaamaan toiseen solmuun tai "
"attribuuttiin missä tahansa skenepuussa. Esimerkkinä tyypillisistä "
"käyttötapauksista NodePath-rakenteelle, mesh-solmu käyttää :code:"
"`NodePath()` rakennetta osoittamaan luurankomalliin ja animaatioraita "
"käyttää :code:`NodePath()` rakennetta osoittamaan solmun animoitavaa "
"attribuuttia."
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 ""
msgid ""
"For example, the ``skeleton`` property in the MeshInstance3D node called "
"``mesh`` points to its parent, ``Armature01``:"
msgstr ""
#, fuzzy
msgid "Skeleton3D"
msgstr "Luuranko"
#, fuzzy
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 ""
"Skeleton solmu periytyy Spatial solmusta, mutta sen lisäksi sillä voi olla "
"lista luita avain-arvo pareina muodossa ``bones/Id/Attribute=Value``. Luiden "
"attribuutit ovat:"
msgid "``position``: Vector3"
msgstr ""
#, fuzzy
msgid "``rotation``: Quaternion"
msgstr "``Rotation``"
msgid "``scale``: Vector3"
msgstr ""
msgid ""
"These attributes are all optional. For instance, a bone may only define "
"``position`` or ``rotation`` without defining the other properties."
msgstr ""
msgid "Here's an example of a skeleton node with two bones:"
msgstr "Tässä esimerkki skeleton-solmusta kahdella luulla:"
#, fuzzy
msgid "BoneAttachment3D"
msgstr "BoneAttachment"
#, fuzzy
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 ""
"BoneAttachment-solmu on välillinen solmu, jolla kuvataan jonkin solmun "
"kiinnittymistä yhteen luuhun Skeleton-solmussa. BoneAttachment-solmulla on :"
"code:`bone_name=NameOfBone` ja vastaavalla isäntäluulla on BoneAttachment-"
"solmu :code:`bound_children` listassaan."
#, fuzzy
msgid ""
"An example of a :ref:`class_Marker3D` node parented to a bone in Skeleton:"
msgstr ""
"Esimerkki yhdestä MeshInstance-solmusta, joka toimii Skeletonin luun "
"isäntänä:"
msgid "AnimationPlayer"
msgstr "Animaatiotoistin (AnimationPlayer)"
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 ""
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 ""
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 ""
msgid "Resources"
msgstr "Resurssit"
#, fuzzy
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 ""
"Resurssit ovat komponentteja, joista solmut muodostuvat. Esimerkiksi "
"MeshInstance-solmulla on ArrayMesh-resurssi. ArrayMesh-resurssi voi olla "
"joko TSCN-tiedoston sisäinen tai sen ulkopuolinen."
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 ""
#, fuzzy
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 ""
"Viittaukset resursseihin hoidetaan resurssien otsikoissa olevilla "
"tunnusnumeroilla. Ulkoisiin ja sisäisiin resursseihin viitataan :code:"
"`ExtResource(id)` ja :code:`SubResource(id)`. Koska sisäisiin ja ulkoisiin "
"resursseihin viitataan eri metodeilla, niillä voi olla sama tunnusluku."
#, fuzzy
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 ""
"Esimerkiksi resurssiin ``[ext_resource id=3 type=\"PackedScene\" "
"path=....]`` voidaan viitata näin: ``ExtResource(3)``."
#, fuzzy
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 ""
"Ulkoiset resurssit ovat linkkejä resursseihin, jotka eivät sisälly TSCN-"
"tiedostoon itsessään. Ulkoinen resurssi koostuu polusta, tyypistä ja ID:stä."
#, fuzzy
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 ""
"Godot luo absoluuttiset polut aina suhteessa resurssihakemistoon ja siksi ne "
"alkavat :code:`res://`, mutta TSCN-tiedoston sijaintiin suhteelliset polut "
"ovat myös mahdollisia."
msgid "Some example external resources are:"
msgstr "Joitakin esimerkkejä ulkoisista resursseista:"
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 ""
#, fuzzy
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 ""
"TSCN-tiedosto voi sisältää meshejä, materiaaleja ja muuta dataa, ja nämä "
"sisältyvät tiedoston sisäisten resurssien osioon. Sisäisen resurssin otsikko "
"näyttää samalta kuin ulkoisenkin, mutta sillä ei ole polkua. Sisäisillä "
"resursseilla on myös :code:`key=value` pareja kunkin otsikon alla. "
"Esimerkiksi kapselitörmäysmuoto näyttää tältä:"
#, fuzzy
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 ""
"Jotkin sisäiset resurssit voivat sisältää linkkejä muihin sisäisiin "
"resursseihin (kuten mesh, jolla on materiaali). Tässä tapauksessa "
"viitattavan resurssin on esiinnyttävä ennen viittausta siihen. Näin ollen "
"tiedoston sisäisten resurssien osiossa järjestyksellä on väliä."
msgid "ArrayMesh"
msgstr "ArrayMesh"
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 ""
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 ""
msgid ""
"``attribute_data``: Vertex attribute data, such as normals, tangents, vertex "
"colors, UV1, UV2 and custom vertex data."
msgstr ""
msgid ""
"``bone_aabbs``: The axis-aligned bounding box of each bone for visibility."
msgstr ""
msgid "``format``: The surface's buffer format."
msgstr ""
msgid ""
"``index_count``: The number of indices in the surface. This must match "
"``index_data``'s size."
msgstr ""
msgid ""
"``index_data``: The index data, which determines which vertices from "
"``vertex_data`` are drawn."
msgstr ""
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 ""
msgid "``material``: The material used when drawing the surface."
msgstr ""
msgid ""
"``name``: The surface's name. This can be used in scripts and is imported "
"from 3D DCCs."
msgstr ""
msgid "``primitive``: The surface's primitive type, matching the"
msgstr ""
msgid "``skin_data``: Bone weight data."
msgstr ""
msgid ""
"``vertex_count``: Number of vertices in the surface. This must match "
"``vertex_data``'s size."
msgstr ""
msgid "``vertex_data``: The vertex position data."
msgstr ""
msgid ""
"Here's an example of an ArrayMesh saved to its own ``.tres`` file. Some "
"fields were shortened with ``...`` for brevity:"
msgstr ""
msgid "Animation"
msgstr "Animaatio"
#, fuzzy
msgid "Each animation has the following properties:"
msgstr "Heijastusnäyttö näyttää seuraavat tiedot:"
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 ""
msgid ""
"``loop_mode``: ``0`` = no looping, ``1`` = wrap-around looping, ``2`` = "
"clamped looping."
msgstr ""
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 ""
#, fuzzy
msgid ""
"Each track is described by a list of key-value pairs in the format ``tracks/"
"<id>/<attribute>``. Each track includes:"
msgstr ""
"Kukin raita on kuvattu listana avain-arvo pareja ``tracks/Id/Attribute``. "
"Kukin raita sisältää:"
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 ""
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 ""
msgid ""
"``enabled``: ``true`` if the track is effective, ``false`` if it was "
"disabled in the editor."
msgstr ""
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 ""
msgid ""
"``interp``: The interpolation mode to use. ``0`` = nearest, ``1`` = linear, "
"``2`` = cubic, ``3`` = linear angle, ``4`` = cubic angle."
msgstr ""
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 ""
msgid ""
"``keys``: The animation track's values. This attribute's structure depends "
"on the ``type``."
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"For 3D position, rotation and scale tracks, ``keys`` is a PackedFloat32Array "
"with all values stored in a sequence."
msgstr ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,37 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Engine development"
msgstr "Pelimoottorin kehitys"
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 ""
msgid ""
"Be sure to also check the :ref:`workflow guidelines "
"<doc_contributing_workflow>`, especially if you're new to using Git or "
"GitHub."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,157 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Building the manual with Sphinx"
msgstr "Android-liitännäisten luonti"
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 ""
msgid "Before you get started, make sure that you have:"
msgstr ""
#, fuzzy
msgid "`Git <https://git-scm.com/>`_"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid ""
"`make <https://www.gnu.org/software/make/>`_ (unless you're using Windows)"
msgstr ""
msgid "`Python <https://www.python.org/>`_ 3"
msgstr ""
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 ""
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 ""
msgid "Create the virtual environment:"
msgstr ""
msgid "Windows"
msgstr "Windows"
#, fuzzy
msgid "Other platforms"
msgstr "Tukee kaikkia alustoja."
msgid "Activate the virtual environment:"
msgstr ""
msgid "*(Optional)* Update pre-installed packages:"
msgstr ""
msgid "Clone the docs repo:"
msgstr ""
msgid "Change directory into the docs repo:"
msgstr ""
msgid "Install the required packages:"
msgstr ""
#, fuzzy
msgid "Build the docs:"
msgstr "Sisäänrakennettu teemaeditori."
msgid ""
"On Windows, that command will run ``make.bat`` instead of GNU Make (or an "
"alternative)."
msgstr ""
msgid ""
"Alternatively, you can build the documentation by running the sphinx-build "
"program manually:"
msgstr ""
msgid ""
"The compilation will take some time as the ``classes/`` folder contains "
"hundreds of files. See :ref:`doc_building_the_manual:performance`."
msgstr ""
msgid ""
"You can then browse the documentation by opening ``_build/html/index.html`` "
"in your web browser."
msgstr ""
#, fuzzy
msgid "Dealing with errors"
msgstr "Varoitusjärjestelmä"
#, fuzzy
msgid "If you run into errors, you may try the following command:"
msgstr "Mob skene käyttää seuraavia solmuja:"
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 ""
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 ""
#, fuzzy
msgid "Hints for performance"
msgstr ":ref:`doc_inspector_plugins`"
#, fuzzy
msgid "RAM usage"
msgstr "MessageLabel"
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 ""
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 ""
msgid "Specifying a list of files"
msgstr ""
msgid ""
"You can specify a list of files to build, which can greatly speed up "
"compilation:"
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,437 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Class reference primer"
msgstr "Luokka viitteet"
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 ""
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 ""
msgid ""
"The reference for each class is contained in an XML file like the one below:"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "`<brief_description>`"
msgstr "Kuvaus"
#, fuzzy
msgid "`<description>`"
msgstr "Kuvaus"
#, fuzzy
msgid "`<constant>`"
msgstr "Vakiot"
msgid ""
"`<method>` (in its `<description>` tag; return types and arguments don't "
"take separate documentation strings)"
msgstr ""
msgid "`<member>`"
msgstr ""
msgid ""
"`<signal>` (in its `<description>` tag; arguments don't take separate "
"documentation strings)"
msgstr ""
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 ""
msgid "How to edit class XML"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Improve formatting with BBCode style tags"
msgstr ""
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 ""
msgid "Linking"
msgstr ""
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 ""
#, fuzzy
msgid "Tag and Description"
msgstr "Kuvaus"
msgid "Example"
msgstr ""
msgid "Result"
msgstr ""
#, fuzzy
msgid "``[Class]``"
msgstr "Luokka"
#, fuzzy
msgid "Link to class"
msgstr "Lisenssien hyväksyminen"
#, fuzzy
msgid "``Move the [Sprite2D].``"
msgstr ":ref:`CSGSphere <class_CSGSphere>`"
#, fuzzy
msgid "Move the :ref:`class_Sprite2D`."
msgstr ":ref:`CSGSphere <class_CSGSphere>`"
msgid "``[annotation Class.name]``"
msgstr ""
#, fuzzy
msgid "Link to annotation"
msgstr "Vektorin interpolointi"
msgid "``See [annotation @GDScript.@export].``"
msgstr ""
msgid "See :ref:`@GDScript.@export <class_@GDScript_annotation_@export>`."
msgstr ""
msgid "``[constant Class.name]``"
msgstr ""
#, fuzzy
msgid "Link to constant"
msgstr "Lisenssien hyväksyminen"
msgid "``See [constant @GlobalScope.KEY_F1].``"
msgstr ""
msgid "See :ref:`@GlobalScope.KEY_F1 <class_@GlobalScope_constant_KEY_F1>`."
msgstr ""
msgid "``[enum Class.name]``"
msgstr ""
#, fuzzy
msgid "Link to enum"
msgstr "Lisenssien hyväksyminen"
msgid "``See [enum Mesh.ArrayType].``"
msgstr ""
msgid "See :ref:`Mesh.ArrayType <enum_Mesh_ArrayType>`."
msgstr ""
#, fuzzy
msgid "``[method Class.name]``"
msgstr "``method`` (metodi)"
#, fuzzy
msgid "Link to method"
msgstr "metodit"
msgid "``Call [method Node3D.hide].``"
msgstr ""
msgid "Call :ref:`Node3D.hide() <class_Node3D_method_hide>`."
msgstr ""
msgid "``[member Class.name]``"
msgstr ""
#, fuzzy
msgid "Link to member"
msgstr "Muokkaa jäsentä"
msgid "``Get [member Node2D.scale].``"
msgstr ""
msgid "Get :ref:`Node2D.scale <class_Node2D_property_scale>`."
msgstr ""
msgid "``[signal Class.name]``"
msgstr ""
#, fuzzy
msgid "Link to signal"
msgstr "Signaalit"
msgid "``Emit [signal Node.renamed].``"
msgstr ""
msgid "Emit :ref:`Node.renamed <class_Node_signal_renamed>`."
msgstr ""
msgid "``[theme_item Class.name]``"
msgstr ""
#, fuzzy
msgid "Link to theme item"
msgstr "Lisenssien hyväksyminen"
msgid "``See [theme_item Label.font].``"
msgstr ""
msgid "See :ref:`Label.font <class_Label_theme_font_font>`."
msgstr ""
msgid "Currently only :ref:`class_@GDScript` has annotations."
msgstr ""
#, fuzzy
msgid "Formatting text"
msgstr "Muoto"
msgid "``[param name]``"
msgstr ""
msgid "Formats a parameter name (as code)"
msgstr ""
msgid "``Takes [param size] for the size.``"
msgstr ""
msgid "Takes ``size`` for the size."
msgstr ""
msgid "``[br]``"
msgstr ""
msgid "Line break"
msgstr ""
msgid "``Line 1.[br]``"
msgstr ""
msgid "``Line 2.``"
msgstr ""
msgid "Line 1."
msgstr ""
msgid "Line 2."
msgstr ""
msgid "``[b]`` ``[/b]``"
msgstr ""
msgid "Bold"
msgstr ""
msgid "``Some [b]bold[/b] text.``"
msgstr ""
msgid "Some **bold** text."
msgstr ""
msgid "``[i]`` ``[/i]``"
msgstr ""
msgid "Italic"
msgstr ""
msgid "``Some [i]italic[/i] text.``"
msgstr ""
msgid "Some *italic* text."
msgstr ""
msgid "``[kbd]`` ``[/kbd]``"
msgstr ""
#, fuzzy
msgid "Keyboard/mouse shortcut"
msgstr "Näppäimistön pikanäppäin"
msgid "``Some [kbd]Ctrl + C[/kbd] key.``"
msgstr ""
msgid "Some :kbd:`Ctrl + C` key."
msgstr ""
#, fuzzy
msgid "Formatting code"
msgstr "Muoto"
msgid "``[code]`` ``[/code]``"
msgstr ""
msgid "Monospace"
msgstr ""
msgid "``Some [code]monospace[/code] text.``"
msgstr ""
msgid "Some ``monospace`` text."
msgstr ""
msgid "``[codeblock]`` ``[/codeblock]``"
msgstr ""
msgid "Multiline preformatted block"
msgstr ""
msgid "*See below.*"
msgstr ""
msgid "``[codeblocks]`` ``[/codeblocks]``"
msgstr ""
msgid "Codeblock for multiple languages"
msgstr ""
msgid "``[gdscript]`` ``[/gdscript]``"
msgstr ""
msgid "GDScript codeblock tab in codeblocks"
msgstr ""
msgid "``[csharp]`` ``[/csharp]``"
msgstr ""
msgid "C# codeblock tab in codeblocks"
msgstr ""
msgid "``[code]`` disables BBCode until the parser encounters ``[/code]``."
msgstr ""
msgid ""
"``[codeblock]`` disables BBCode until the parser encounters ``[/codeblock]``."
msgstr ""
msgid ""
"Use ``[codeblock]`` for pre-formatted code blocks. Inside ``[codeblock]``, "
"always use **four spaces** for indentation. The parser will delete tabs."
msgstr ""
msgid "For example:"
msgstr ""
msgid "Will display as:"
msgstr ""
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 ""
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 ""
msgid "The above will display as:"
msgstr ""
msgid ""
"To denote important information, add a paragraph starting with \"[b]Note:[/"
"b]\" at the end of the description:"
msgstr ""
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 ""
msgid ""
"For deprecated properties, add a paragraph starting with \"[i]Deprecated.[/"
"i]\". Notice the use of italics instead of bold:"
msgstr ""
msgid ""
"In all the paragraphs described above, make sure the punctuation is part of "
"the BBCode tags for consistency."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,149 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Content guidelines"
msgstr "Yleiset eroavaisuudet"
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 ""
msgid "We want to achieve two goals:"
msgstr ""
msgid ""
"**Empathize with our users.** We should write in a way that makes it easy "
"for them to learn from the docs."
msgstr ""
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 ""
msgid "Guidelines and principles"
msgstr ""
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 ""
msgid "Writing complete and accessible documentation"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Limiting cognitive load"
msgstr ""
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 ""
msgid "Introducing only one new concept at a time whenever possible."
msgstr ""
msgid "Using simple English, as we recommend in our writing guidelines."
msgstr ""
msgid ""
"Including one or more **concrete usage examples**. Prefer a real-world "
"example to one that uses names like ``foo``, ``bar``, or ``baz``."
msgstr ""
msgid ""
"While many people may understand more complex language and abstract "
"examples, you will lose others. Understandable writing and practical "
"examples benefit everyone."
msgstr ""
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 ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,291 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Contributing to the documentation"
msgstr ""
msgid ""
"This guide explains how to contribute to Godot's documentation, be it by "
"writing or reviewing pages."
msgstr ""
msgid ""
"If you want to translate pages or the class reference from English to other "
"languages, read :ref:`doc_editor_and_docs_localization`."
msgstr ""
msgid "Getting started"
msgstr "Alkuun pääseminen"
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 ""
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 ""
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 ""
#, fuzzy
msgid "What is the Godot documentation"
msgstr "Dokumentaatiosta"
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 ""
msgid ""
"We strive to write factual content in an accessible and well-written "
"language. To contribute, you should also read:"
msgstr ""
msgid ""
":ref:`doc_docs_writing_guidelines`. There, you will find rules and "
"recommendations to write in a way that everyone understands."
msgstr ""
msgid ""
":ref:`doc_content_guidelines`. They explain the principles we follow to "
"write the documentation and the kind of content we accept."
msgstr ""
#, fuzzy
msgid "Contributing changes"
msgstr "Animaation ohjaaminen"
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 ""
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 ""
#, fuzzy
msgid "Editing existing pages"
msgstr "Ilmentymien muokkaus"
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 ""
msgid ""
"To build the manual and test changes on your computer, see :ref:"
"`doc_building_the_manual`."
msgstr ""
msgid "Editing pages online"
msgstr ""
msgid ""
"You can edit the documentation online by clicking the **Edit on GitHub** "
"link in the top-right of every page."
msgstr ""
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 ""
msgid "Click the **Edit on GitHub** button."
msgstr ""
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 ""
#, fuzzy
msgid "Edit the text in the text editor."
msgstr "Sisäänrakennettu teemaeditori."
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 ""
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 ""
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 ""
#, fuzzy
msgid "Adding new pages"
msgstr "Suunnittelukieli"
msgid ""
"Before adding a new page, please ensure that it fits in the documentation:"
msgstr ""
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 ""
msgid "Ensure there isn't a page that already covers the topic."
msgstr ""
msgid "Read our :ref:`doc_content_guidelines`."
msgstr ""
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 ""
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 ""
msgid "Titles"
msgstr ""
msgid "Always begin pages with their title and a Sphinx reference name:"
msgstr ""
msgid ""
"The reference ``_doc_insert_your_title_here`` and the title should match."
msgstr ""
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 ""
msgid "Write your titles like plain sentences, without capitalizing each word:"
msgstr ""
#, fuzzy
msgid "**Good:** Understanding signals in Godot"
msgstr "Signaalien yhdistäminen koodin kautta"
msgid "**Bad:** Understanding Signals In Godot"
msgstr ""
msgid ""
"Only propers nouns, projects, people, and node class names should have their "
"first letter capitalized."
msgstr ""
msgid "Sphinx and reStructuredText syntax"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Adding images and attachments"
msgstr "Lisäsolmujen lisäys"
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 ""
msgid ""
"Alternatively, you can use the `figure` directive, which gives the image a "
"contrasting border and allows centering it on the page."
msgstr ""
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 ""
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 ""
msgid "License"
msgstr "Lisenssi"
#, fuzzy
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 ""
"Tämä dokumentaatio ja sen sisältö on `Creative Commons Attribution 3.0 "
"license (CC-BY-3.0) <https://tldrlegal.com/license/creative-commons-"
"attribution-(cc)>`_ lisenssin alaista, liitteellä \"Juan Linietsky, Ariel "
"Manzur and the Godot Engine community\"."
msgid ""
"By contributing to the documentation on the GitHub repository, you agree "
"that your changes are distributed under this license."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,222 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Creating documentation images"
msgstr "Dokumentaation rakenne"
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 ""
#, fuzzy
msgid "Capturing an image"
msgstr "Toimintojen sieppaaminen"
msgid ""
"To take a picture of something in Godot a screen capture tool can be used."
msgstr ""
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 ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Format conversion"
msgstr "Portit ja yhteydet"
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 ""
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 ""
msgid "Cropping"
msgstr ""
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 ""
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 ""
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 ""
msgid ""
"After selecting it, click on the image, you should now have cropping tools "
"available."
msgstr ""
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 ""
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 ""
msgid "Scaling down an image"
msgstr ""
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 ""
msgid "Saving as WebP in Krita"
msgstr ""
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 ""
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 ""
msgid "Outlines arrows and text"
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Adding an image to a documentation page"
msgstr "Dokumentaation rakenne"
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 ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,476 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Writing guidelines"
msgstr "Yleiset eroavaisuudet"
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 ""
msgid "In summary, always try to:"
msgstr ""
msgid "Use the active voice"
msgstr ""
msgid "Use precise action verbs"
msgstr ""
msgid "Avoid verbs that end in -ing"
msgstr ""
msgid "Remove unnecessary adverbs and adjectives."
msgstr ""
msgid ""
"Ban these 8 words: obvious, simple, basic, easy, actual, just, clear, and "
"however"
msgstr ""
msgid "Use explicit references"
msgstr ""
msgid "Use 's to show possession"
msgstr ""
msgid "Use the Oxford comma"
msgstr ""
msgid "There are 3 rules to describe classes:"
msgstr ""
msgid "Give an overview of the node in the brief description"
msgstr ""
msgid "Mention what methods return if it's useful"
msgstr ""
msgid "Use \"if true\" to describe booleans"
msgstr ""
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 ""
msgid ""
"See the :ref:`content guidelines <doc_content_guidelines>` for information "
"on the types of documentation you can write in the official documentation."
msgstr ""
msgid "7 rules for clear English"
msgstr ""
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 ""
msgid "Passive:"
msgstr ""
msgid "Active:"
msgstr ""
msgid "**Don't** use the passive voice:"
msgstr ""
msgid "**Do** use the node's name as a noun:"
msgstr ""
msgid ""
"Favor precise yet common verbs over generic ones like ``make``, ``set``, and "
"any expression you can replace with a single word."
msgstr ""
msgid ""
"**Don't** repeat the method's name. It already states it sets the pivot "
"value to a new one:"
msgstr ""
msgid ""
"**Do** explain what's the consequence of this \"set\": use precise verbs "
"like ``place``, ``position``, ``rotate``, ``fade``, etc."
msgstr ""
msgid ""
"The progressive forms describe continuous actions. E.g. \"is calling\", \"is "
"moving\"."
msgstr ""
msgid "**Don't** use the progressive form for instant changes."
msgstr ""
msgid "**Do** use simple present, past, or future."
msgstr ""
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 ""
msgid ""
"You may use the progressive tense to describe actions that are continuous in "
"time. Anything like animation or coroutines."
msgstr ""
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 ""
msgid "Remove unnecessary adverbs and adjectives"
msgstr ""
msgid ""
"Write as few adjectives and adverbs as possible. Only use them if they add "
"key information to the description."
msgstr ""
msgid ""
"**Don't** use redundant or meaningless adverbs. Words that lengthen the "
"documentation but don't add any information:"
msgstr ""
msgid "**Do** write short sentences in a simple, descriptive language:"
msgstr ""
msgid "Ban these 8 words"
msgstr ""
msgid "**Don't** ever use these 8 banned words:"
msgstr ""
msgid "obvious"
msgstr ""
msgid "simple"
msgstr ""
msgid "basic"
msgstr ""
msgid "easy"
msgstr ""
msgid "actual"
msgstr ""
msgid "just"
msgstr ""
msgid "clear"
msgstr ""
msgid "however (some uses)"
msgstr ""
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 ""
msgid ""
"**Don't** example. The banned words lengthen the description and take "
"attention away from the most important info:"
msgstr ""
msgid "**Do** remove them:"
msgstr ""
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 ""
msgid "**Do** explain what the node does instead:"
msgstr ""
msgid "**Don't** use \"basic\", it is too vague:"
msgstr ""
msgid "**Do** use the brief description to offer an overview of the node:"
msgstr ""
msgid "Favor explicit references over implicit ones."
msgstr ""
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 ""
msgid "**Do** repeat words. They remove all ambiguity:"
msgstr ""
msgid ""
"If you need to repeat the same variable name 3 or 4 times, you probably need "
"to rephrase your description."
msgstr ""
msgid ""
"Avoid \"The milk **of** the cow\". It feels unnatural in English. Write "
"\"The cow's milk\" instead."
msgstr ""
msgid "**Don't** write \"of the X\":"
msgstr ""
msgid ""
"**Do** use ``'s``. It lets you put the main subject at the start of the "
"sentence, and keep it short:"
msgstr ""
msgid "Use the Oxford comma to enumerate anything"
msgstr ""
msgid "From the Oxford dictionary:"
msgstr ""
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 ""
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 ""
msgid "**Don't** leave the last element of a list without a comma:"
msgstr ""
msgid ""
"**Do** add a comma before `and` or `or`, for the last element of a list with "
"more than two elements."
msgstr ""
msgid "How to write methods and classes"
msgstr ""
msgid "Dynamic vs static typing"
msgstr ""
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 ""
msgid "The exception is topics that explain static typing concepts to users."
msgstr ""
msgid "**Don't** add a type hint with a colon or by casting:"
msgstr ""
msgid "**Do** write constants and variables with dynamic typing:"
msgstr ""
msgid "**Don't** write functions with inferred arguments or return types:"
msgstr ""
msgid "**Do** write functions using dynamic typing:"
msgstr ""
msgid "Use real-world code examples where appropriate"
msgstr ""
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 ""
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 ""
msgid "**Don't** write made-up examples:"
msgstr ""
msgid "**Do** write concrete examples:"
msgstr ""
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 ""
msgid ""
"The brief description is the reference's most important sentence. It's the "
"user's first contact with a node:"
msgstr ""
msgid "It's the only description in the \"Create New Node\" dialog."
msgstr ""
msgid "It's at the top of every page in the reference"
msgstr ""
msgid ""
"The brief description should explain the node's role and its functionality, "
"in up to 200 characters."
msgstr ""
msgid "**Don't** write tiny and vague summaries:"
msgstr ""
msgid "**Do** give an overview of the node's functionality:"
msgstr ""
msgid ""
"Use the node's full description to provide more information, and a code "
"example, if possible."
msgstr ""
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 ""
msgid "**Do** always use \"Returns\"."
msgstr ""
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 ""
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 ""
msgid ""
"Also, surround boolean values, variable names and methods with ``[code][/"
"code]``."
msgstr ""
msgid "**Do** start with \"if true\":"
msgstr ""
msgid "Use ``[code]`` around arguments"
msgstr ""
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 ""
msgid "Common vocabulary to use in Godot's documentation"
msgstr ""
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 ""
msgid "Overview of the interface and common vocabulary"
msgstr ""
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 ""
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 ""
msgid ""
"The Animation, Debugger, etc. at the bottom of the viewport are ``panels``. "
"Together they make up the ``bottom panels``."
msgstr ""
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 ""
msgid "Keyboard shortcut guidelines"
msgstr ""
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 ""
msgid ""
"Make sure to mention shortcuts that differ on macOS compared to other "
"platforms. On macOS, ``Cmd`` often replaces ``Ctrl`` in keyboard shortcuts."
msgstr ""
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 ""
msgid ""
"Press ``:kbd:`Ctrl + Alt + T``` to toggle the panel (``:kbd:`Cmd + Alt + "
"T``` on macOS)."
msgstr ""
msgid ""
"Press ``:kbd:`Space``` and hold the left mouse button to pan in the 2D "
"editor."
msgstr ""
msgid "Press ``:kbd:`Shift + Up Arrow``` to move the node upwards by 8 pixels."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,480 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Editor and documentation localization"
msgstr ""
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 ""
#, fuzzy
msgid "These resources include:"
msgstr "Muita avainsanoja ovat:"
msgid ""
"The `Godot editor's interface <https://hosted.weblate.org/projects/godot-"
"engine/godot/>`__ (ca. 15,000 words)."
msgstr ""
msgid ""
"The `online documentation <https://hosted.weblate.org/projects/godot-engine/"
"godot-docs/>`__ (editor manual and tutorials, ca. 300,000 words)."
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid "Using Weblate for translations"
msgstr ""
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 ""
msgid ""
"You should therefore `register on Weblate <https://hosted.weblate.org/"
"accounts/register/>`__ to contribute to Godot's translations."
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "Adding a new language"
msgstr "Suunnittelukieli"
msgid ""
"If your language is already listed, click on its name to access the "
"overview, and skip the rest of this section."
msgstr ""
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 ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Translation interface"
msgstr "Muokkaa käyttöliittymää"
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 ""
msgid ""
"After selecting a list of clicking \"Translate\", you will see the main "
"translation interface where all the work happens:"
msgstr ""
msgid "On that page, you have:"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Locating original content"
msgstr "3D-sisällön luominen"
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Respecting the markup syntax"
msgstr ""
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 ""
#, fuzzy
msgid "Editor interface (C++)"
msgstr "Godotin käyttöliittymät"
msgid "The editor translations originate from C++ strings, and may use:"
msgstr ""
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 ""
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 ""
msgid ""
"Only logical order of the characters matters, in the right-to-left text, "
"format specifiers may be displayed as ``s%``."
msgstr ""
#, fuzzy
msgid "Online documentation (RST)"
msgstr "Dokumentaation rakenne"
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 ""
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 ""
#, fuzzy
msgid "Class reference (BBCode)"
msgstr "Data-asetukset"
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Offline translation and testing"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Localizing documentation images"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"Repeat this for other images and :ref:`make a Pull Request "
"<doc_pr_workflow>`."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,80 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Writing documentation"
msgstr "Dokumentaation rakenne"
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 ""
msgid ""
"Be sure to also check the :ref:`workflow guidelines "
"<doc_contributing_workflow>`, especially if you're new to using Git or "
"GitHub."
msgstr ""
#, fuzzy
msgid "Guidelines"
msgstr "Yleiset eroavaisuudet"
msgid ""
"Here are the principles and guidelines we strive to follow to write "
"accessible documentation."
msgstr ""
#, fuzzy
msgid "Writing the manual"
msgstr "Varoitusjärjestelmä"
msgid ""
"These articles explain how to contribute to this very documentation, and how "
"to build the online version locally for testing."
msgstr ""
#, fuzzy
msgid "Class reference guides"
msgstr "Luokka viitteet"
#, fuzzy
msgid "The pages below focus on the class reference."
msgstr "Attribuuttiviittaus"
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 ""
#, fuzzy
msgid "Translating the documentation"
msgstr "Dokumentaation rakenne"
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,169 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Contributing to the class reference"
msgstr "Attribuuttiviittaus"
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 ""
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 ""
#, fuzzy
msgid "The source of the class reference"
msgstr "Attribuuttiviittaus"
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 ""
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 ""
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 ""
msgid ""
"For details on Git usage and the pull request workflow, please refer to the :"
"ref:`doc_pr_workflow` page."
msgstr ""
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 ""
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 ""
msgid "What to contribute"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Updating class reference when working on the engine"
msgstr ""
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 ""
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 ""
msgid ""
"The exact set of suffixes may be different. Carefully read through the "
"linked article to learn more about that."
msgstr ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,292 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Ways to contribute"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
"**Osallistu moottorin kehitykseen.** Tämä voi tapahtua antamalla koodia "
"muutospyyntöjen kautta, testaamalla kehityskuvat tai suoraan git *master* -"
"haarat, raportoimalla virheistä tai ehdottamalla parannuksia "
"ongelmanseurantaan, parantamalla virallista dokumentaatiota (sekä "
"luokkaviittauksia että opetusohjelmia) ja sen käännöksiä. Seuraavissa "
"kohdissa käsitellään kutakin näistä \"suorista\" tavoista osallistua "
"moottoriin."
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 ""
msgid "Contributing code"
msgstr ""
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 ""
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 ""
"Näin ollen jokaisella on oikeus muuttaa `Godotin lähdekoodia <https://github."
"com/godotengine/godot>`_ ja lähettää nämä muutokset takaisin tuotantovirran "
"ylävirtaan kuuluvalle projektille korjauksen muodossa (tekstitiedosto, jossa "
"muutokset kuvataan valmiina sovellettavaksi) tai - käyttämässämme "
"nykyaikaisessa työnkulussa - niin sanotun \"muutospyynnön\" (PR) kautta, eli "
"ehdotus yhden tai useamman Git-komennon (patch) yhdistämisestä suoraan "
"pääkehityshaaraan."
msgid "Contributing code changes upstream has two big advantages:"
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"Technical details about the PR workflow are outlined in a specific section, :"
"ref:`doc_pr_workflow`."
msgstr ""
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 ""
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 ""
"Kaikkien muutospyyntöjen on käytävä läpi tarkistusprosessi ennen kuin ne "
"hyväksytään. Muutosten laajuudesta riippuen voi kestää jonkin aikaa, ennen "
"kuin moottorin muutetusta osasta vastaava ylläpitäjä antaa lausuntonsa. "
"Arvostamme kaikkia avustajiamme ja pyydämme heitä olemaan kärsivällisiä "
"sillä odotettavissa on, että Godotin kaltaisessa avoimen lähdekoodin "
"projektissa on paljon enemmän avustajia kuin niiden vahvistajia."
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 ""
msgid ""
"Proposals are only required when working on an enhancement or a new feature. "
"Bug reports are sufficient for fixing issues."
msgstr ""
msgid "Testing and reporting issues"
msgstr ""
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 ""
msgid "Testing development versions"
msgstr ""
msgid "To help with the testing, you have several possibilities:"
msgstr ""
msgid ""
"Compile the engine from source yourself, following the instructions of the :"
"ref:`Compiling <toc-devel-compiling>` page for your platform."
msgstr ""
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 ""
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 ""
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 ""
msgid "Filing an issue on GitHub"
msgstr ""
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 ""
msgid "Contributing to the documentation"
msgstr ""
msgid ""
"There are two separate resources referred to as \"documentation\" in Godot:"
msgstr ""
#, fuzzy
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 ""
"**Luokkaviittaus.** Tämä on dokumentaatio koko Godot API:lle, sellaisena "
"kuin se näkyy GDScriptille ja muille skriptikielille. Siihen voi tutustua "
"offline-tilassa, suoraan Godot'n koodieditorissa tai verkossa osoitteessa :"
"ref:`Godot API <toc-class-ref>`. Jos haluat osallistua luokkaviittaukseen, "
"sinun on muokattava luokkaa vastaavaa XML-tiedostoa ja tehtävä "
"muutosehdotus. Katso lisätietoja :ref:`doc_updating_the_class_reference` ja :"
"ref:`doc_class_reference_writing_guidelines`."
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 ""
"**Ohjeita ja moottorin dokumentaatio ja sen käännökset.** Tämä on nyt "
"lukemasi osa, joka on jaettu HTML-muodossa. Sen sisältö on tuotettu "
"tavallisista tekstitiedostoista reStructured Text (rst) -muodossa, johon "
"voit osallistua muutospyynnöillä `godot-docs <https://github.com/godotengine/"
"godot-docs>`_ GitHub-tietovarastossa. Katso :ref:"
"`doc_contributing_to_the_documentation` lisätietoja."
#, fuzzy
msgid "Contributing translations"
msgstr "Animaation ohjaaminen"
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 ""
#, fuzzy
msgid "See :ref:`doc_editor_and_docs_localization` for more details."
msgstr "Katso :ref:`doc_instancing` oppiaksesi enemmän ilmentymistä."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,206 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Bisecting regressions"
msgstr ""
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 ""
msgid "The guide below explains how to find a regression by bisecting."
msgstr ""
#, fuzzy
msgid "What is bisecting?"
msgstr "Mikä on Mesh?"
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 ""
msgid "Using official builds to speed up bisecting"
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid ""
"Project files may be incompatible between Godot versions. **Make a backup of "
"your project** before starting the bisection process."
msgstr ""
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 ""
msgid "The Git bisect command"
msgstr ""
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 ""
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 ""
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 ""
msgid "Determine the commit hashes"
msgstr ""
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 ""
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 ""
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 ""
#, fuzzy
msgid "Example usage:"
msgstr "Vihollisen skripti"
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 ""
#, fuzzy
msgid "Build the engine"
msgstr "Android-liitännäisten luonti"
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 ""
msgid "Compile Godot. This assumes you've set up a build environment:"
msgstr ""
#, fuzzy
msgid "Run the engine"
msgstr "Skenen pystytys"
msgid ""
"Run the binary located in the ``bin/`` folder and try to reproduce the bug."
msgstr ""
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 ""
msgid "If the build **still** exhibits the bug, run the following command:"
msgstr ""
msgid "If the build **does not** exhibit the bug, run the following command:"
msgstr ""
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 ""
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 ""
msgid ""
"You can read the full documentation on ``git bisect`` `here <https://git-scm."
"com/docs/git-bisect>`__."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,440 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Bug triage guidelines"
msgstr ""
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 ""
msgid "Issues management"
msgstr ""
msgid "GitHub proposes various features to manage issues:"
msgstr ""
msgid "Set one or several labels from a predefined list"
msgstr ""
msgid "Set one milestone from a predefined list"
msgstr ""
msgid "Keep track of the issue in the project dashboard"
msgstr ""
msgid ""
"Define one contributor as \"assignee\" among the Godot engine organization "
"members"
msgstr ""
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 ""
msgid "For the time being, we do not use the project dashboard feature either."
msgstr ""
msgid ""
"As far as possible, we try to assign labels (and milestones, when relevant) "
"to both issues and pull requests."
msgstr ""
msgid "Labels"
msgstr ""
msgid "The following labels are currently defined in the Godot repository:"
msgstr ""
msgid "**Categories:**"
msgstr ""
msgid ""
"*Archived*: either a duplicate of another issue, or invalid. Such an issue "
"would also be closed."
msgstr ""
msgid ""
"*Breaks compat*: describes something that can only be fixed by breaking "
"compatibility with existing projects."
msgstr ""
msgid "*Bug*: describes something that is not working properly."
msgstr ""
msgid ""
"*Cherrypick*: describes something that can be backported to a stable branch "
"after being merged in the ``master`` branch."
msgstr ""
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 ""
msgid ""
"*Crash:* describes a bug that causes the engine to crash. This label is only "
"used for \"hard\" crashes, not freezes."
msgstr ""
msgid ""
"*Discussion*: the issue is not consensual and needs further discussion to "
"define what exactly should be done to address the topic."
msgstr ""
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 ""
msgid ""
"*Enhancement*: describes a proposed enhancement to an existing functionality."
msgstr ""
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 ""
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 ""
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 ""
msgid ""
"*High priority:* the issue is particularly important as it can prevent "
"people from releasing their projects or cause data loss."
msgstr ""
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 ""
msgid ""
"*Needs work*: the pull request needs additional work before it can be merged."
msgstr ""
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 ""
msgid "*Production*: Relates to the production team."
msgstr ""
msgid ""
"*Regression*: the bug appeared after a stable release not exhibiting the bug "
"was released."
msgstr ""
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 ""
msgid ""
"*Tracker*: issue used to track other issues (like all issues related to the "
"plugin system)."
msgstr ""
msgid ""
"*Usability*: issues that directly impact user usability. Should not be "
"coupled with *Performance*."
msgstr ""
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 ""
msgid "**Topics:**"
msgstr ""
msgid ""
"*2D*: relates to 2D-specific issues. Should be coupled with one of the "
"labels below, and should not be coupled with *3D*."
msgstr ""
msgid ""
"*3D*: relates to 3D-specific issues. Should be coupled with one of the "
"labels below, and should not be coupled with *2D*."
msgstr ""
msgid "*Animation*: relates to the Animation system, editors and importers."
msgstr ""
msgid "*Assetlib*: relates to issues with the asset library."
msgstr ""
msgid "*Audio*: relates to the audio features (low and high level)."
msgstr ""
msgid ""
"*Buildsystem*: relates to building issues, either linked to the SCons "
"buildsystem or to compiler peculiarities."
msgstr ""
msgid "*Codestyle*: relates to the programming style used within the codebase."
msgstr ""
msgid ""
"*Core*: anything related to the core engine. Specific topics are split off "
"separately as they crop up."
msgstr ""
msgid "*Dotnet*: relates to the C# / Dotnet bindings."
msgstr ""
msgid "*Editor*: relates to issues in the editor (mainly UI)."
msgstr ""
msgid "*Export*: relates to the export system and templates."
msgstr ""
msgid "*GDExtension*: relates to the GDExtension system for native extensions."
msgstr ""
msgid "*GDScript*: relates to GDScript."
msgstr ""
msgid ""
"*GUI*: relates to GUI (Control) nodes or to Nodes that compose user "
"interfaces."
msgstr ""
msgid "*Import*: relates to the resource import system."
msgstr ""
msgid "*Input*: relates to the input system."
msgstr ""
msgid "*Multiplayer*: relates to multiplayer (high-level networking) systems."
msgstr ""
msgid ""
"*Navigation*: relates to the navigation system (including A* and navmeshes)."
msgstr ""
msgid "*Network*: relates to (lot-level) networking."
msgstr ""
#, fuzzy
msgid "*Particles*: particles, particle systems and their editors."
msgstr ":ref:`doc_particle_shader`"
msgid "*Physics*: relates to the physics engine (2D/3D)."
msgstr ""
msgid "*Plugin*: relates to problems encountered while writing plugins."
msgstr ""
msgid "*Porting*: relates to some specific platforms or exporting projects."
msgstr ""
msgid "*Rendering*: relates to the 2D and 3D rendering engines."
msgstr ""
msgid "*Shaders*: relates to the Godot shader language or visual shaders."
msgstr ""
msgid "*Tests*: relates to unit tests."
msgstr ""
msgid "*Thirdparty*: relates to third-party libraries used in Godot."
msgstr ""
msgid "*XR*: relates to Augmented Reality or Virtual Reality."
msgstr ""
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 ""
msgid "**Platforms:**"
msgstr ""
msgid "*Android*, *HTML5*, *iOS*, *Linux*, *macOS*, *Windows*, *UWP*"
msgstr ""
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 ""
#, fuzzy
msgid "Documentation labels"
msgstr "Dokumentaation muutosloki"
#, fuzzy
msgid ""
"In the `documentation repository <https://github.com/godotengine/godot-"
"docs>`__, we use the following labels:"
msgstr ""
"kopio `godot-cpp säilöstä <https://github.com/godotengine/godot-docs>`_."
msgid ""
"*Bug*: Incorrect information in an existing page. Not to be used for "
"*missing* information."
msgstr ""
msgid "*Dependencies*: describes pull requests that update a dependency file."
msgstr ""
msgid "*Enhancememnt*: new information to be added in an existing page."
msgstr ""
msgid "*Python*: Pull requests that update Python code."
msgstr ""
#, fuzzy
msgid "**Area:**"
msgstr "**Kamera:**"
msgid ""
"*About*: Issues and PRs related to the About section of the documentation "
"and other general articles."
msgstr ""
msgid ""
"*Class reference*: the issue is about the class reference, not a "
"documentation page."
msgstr ""
msgid ""
"*Community*: Issues and PRs related to the Community section of the "
"documentation."
msgstr ""
msgid ""
"*Contributing*: Issues and PRs related to the Contributing/Development "
"section of the documentation."
msgstr ""
msgid ""
"*Getting started*: Issues and PRs related to the Getting Started section of "
"the documentation."
msgstr ""
msgid ""
"*Manual*: Issues and PRs related to the Manual/Tutorials section of the "
"documentation."
msgstr ""
#, fuzzy
msgid "**Content:**"
msgstr "Vakiot"
msgid ""
"*Images*: Issues and PRs involving outdated or incorrect images in articles."
msgstr ""
msgid ""
"*New page*: Issues and PRs related to creation of new documentation pages "
"for new or undocumented features."
msgstr ""
msgid "*Organization*: Issues and PRs related to reorganizing the content."
msgstr ""
msgid ""
"*Proofreading*: Issues and PRs related to proofreading the documentation."
msgstr ""
msgid ""
"*Redirect*: Issues and PRs involving moving content and adding a redirect "
"rule on the backend."
msgstr ""
msgid ""
"*Website*: Issues related to adding website features and fixing bugs, "
"whether on the front or back-end,"
msgstr ""
msgid "**Topic:**"
msgstr ""
msgid ""
"The available topics describe the same content as the topics in the main "
"repository."
msgstr ""
msgid "Milestones"
msgstr ""
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 ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,32 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Contribution workflow"
msgstr "Animaation ohjaaminen"
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,607 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Pull request review process"
msgstr "Muutospyynnön työnkulku"
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 ""
msgid ""
"From a high level, the ideal life cycle of a pull request looks like the "
"following:"
msgstr ""
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 ""
msgid ""
"Other contributors provide feedback on the PR (including reviewing and/or "
"approving the PR, as appropriate)."
msgstr ""
msgid ""
"An engine maintainer reviews the code and provides feedback, requests "
"changes, or approves the pull request, as appropriate."
msgstr ""
msgid ""
"Another maintainer reviews the code with a focus on code style/clarity and "
"approves it once satisfied."
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Code review and testing"
msgstr ""
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 ""
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 ""
msgid "1. Confirm that the problem exists"
msgstr ""
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 ""
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 ""
msgid "2. Test the PR and look for regressions"
msgstr ""
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 ""
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 ""
msgid "3. Do a code review"
msgstr ""
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 ""
msgid ""
"Here are some things to think about and look out for as you review the code:"
msgstr ""
msgid ""
"**Code only touches the areas announced in the PR (and the commit message).**"
msgstr ""
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 ""
msgid "**Code properly uses Godot's own APIs and patterns.**"
msgstr ""
msgid ""
"Consistency is very important, and a solution that already exists in the "
"codebase is preferable to an ad-hoc solution."
msgstr ""
msgid "**Are core areas affected by the change?**"
msgstr ""
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 ""
msgid "4. Iterate with the contributor and improve the PR"
msgstr ""
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 ""
msgid "**Communicate barriers to merging early in the review process.**"
msgstr ""
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 ""
msgid ""
"As you review pull requests, keep the Godot `Code of Conduct <https://"
"godotengine.org/code-of-conduct>`_ in mind. Especially the following:"
msgstr ""
msgid "Politeness is expected at all times. Be kind and courteous."
msgstr ""
msgid "Always assume positive intent from others."
msgstr ""
msgid "Feedback is always welcome but keep your criticism constructive."
msgstr ""
msgid ""
"Here are some things to avoid as you iterate on a pull request with a "
"contributor:"
msgstr ""
msgid "**Needless double reviews.**"
msgstr ""
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 ""
msgid "**Being overly nitpicky.**"
msgstr ""
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 ""
msgid "**Expanding the scope of a pull request.**"
msgstr ""
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 ""
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 ""
#, fuzzy
msgid "5. Approve the pull request"
msgstr "Godotin asennus"
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 ""
#, fuzzy
msgid "Code style review"
msgstr "Editorin ikonit"
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 ""
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 ""
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 ""
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 ""
msgid "The style of header includes is respected."
msgstr ""
msgid "Identifiers use ``snake_case`` and follow our naming conventions."
msgstr ""
msgid ""
"Method parameters start with ``p_*`` or ``r_*`` (if they are used to return "
"a value)."
msgstr ""
msgid "Braces are used appropriately, even for one-liner conditionals."
msgstr ""
msgid ""
"Code is properly spaced (exactly one empty line between methods, no "
"unnecessary empty lines inside of method bodies)."
msgstr ""
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 ""
#, fuzzy
msgid "Merging pull requests"
msgstr "Godotin asennus"
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 ""
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 ""
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 ""
msgid ""
"As a contributor you can help move a pull request forward by doing some of "
"these steps yourself."
msgstr ""
msgid "1. Get feedback from the right people/teams"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "2. Get feedback from the community"
msgstr ""
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 ""
msgid ""
"the person who reported the bug if the pull request fixes the bug for them,"
msgstr ""
msgid ""
"contributors who have recently edited that file if they could take a look, or"
msgstr ""
msgid ""
"a more experienced maintainer from another area if they could provide "
"feedback."
msgstr ""
msgid "3. Git checklist"
msgstr ""
msgid "**Make sure that the PR comes in one commit.**"
msgstr ""
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 ""
msgid ""
"**Fixes made during the review process must be squashed into the main commit."
"**"
msgstr ""
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 ""
msgid "**Make sure that the PR has no merge conflicts.**"
msgstr ""
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 ""
msgid "**Check for proper commit attribution.**"
msgstr ""
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 ""
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 ""
msgid "**Check for proper commit messages.**"
msgstr ""
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 ""
msgid "4. GitHub checklist"
msgstr ""
msgid "**Validate the target branch of the PR.**"
msgstr ""
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 ""
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 ""
msgid "**Make sure that the appropriate milestone is assigned.**"
msgstr ""
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 ""
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 ""
msgid ""
"**Make sure that the opening message of the PR contains the magic words "
"\"Closes #...\" or \"Fixes #...\".**"
msgstr ""
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 ""
msgid ""
"**For the issues that get closed by the PR add the closest relevant "
"milestone.**"
msgstr ""
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 ""
#, fuzzy
msgid "5. Merge the pull request"
msgstr "Godotin asennus"
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,609 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Pull request workflow"
msgstr "Muutospyynnön työnkulku"
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 ""
"Godotin käyttämä niin sanottu \"PR-työnkulku\" on yleinen monissa Git-"
"projekteissa, ja sen pitäisi olla tuttu veteraaneille vapaiden ohjelmistojen "
"tekijöille. Ajatuksena on, että vain pieni osa (jos ollenkaan) sitoutuu "
"suoraan *master*-haaraan. Sen sijaan avustajat * haarukoivat* projektin (ts. "
"luovat siitä kopion, jota he voivat muokata haluamallaan tavalla) ja "
"pyytävät sitten GitHubin käyttöliittymän avulla *pull* yhdestä "
"haarautumishaarastaan alkuperäisen (usein *upstream* nimellä varustetun) "
"arkiston yhteen haaraan."
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 ""
"Tuloksena syntyvä *kutsupyyntö* (PR) voi sitten tulla muiden tekijöiden "
"tarkasteltavaksi ja he voivat hyväksyä sen, hylätä sen tai useimmiten pyytää "
"tekemään muutoksia. Kun PR on hyväksytty joku ydinkehittäjistä voi sulauttaa "
"sen ja sen toimituksesta (toimituksista) tulee osa kohdehaaraa (yleensä "
"*master*-haaraa)."
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 ""
msgid "Git source repository"
msgstr ""
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 ""
msgid ""
"If you are contributing to the documentation, its repository can be found "
"`here <https://github.com/godotengine/godot-docs>`_."
msgstr ""
"Jos osallistut dokumentaation tekemiseen, sen säilö löytyy `tästä "
"osoitteesta <https://github.com/godotengine/godot-docs>`_."
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 ""
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 ""
msgid "The branches on the Git repository are organized as follows:"
msgstr ""
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 ""
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 ""
msgid ""
"There might occasionally be feature branches, usually meant to be merged "
"into the ``master`` branch at some time."
msgstr ""
msgid "Forking and cloning"
msgstr ""
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 ""
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 ""
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 ""
msgid ""
"If you are on Windows, open Git Bash to type commands. macOS and Linux users "
"can use their respective terminals."
msgstr ""
msgid "To clone your fork from GitHub, use the following command:"
msgstr ""
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 ""
msgid ""
"After a little while, you should have a ``godot`` directory in your current "
"working directory. Move into it using the ``cd`` command:"
msgstr ""
msgid ""
"We will start by setting up a reference to the original repository that we "
"forked:"
msgstr ""
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 ""
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 ""
msgid ""
"*Branch it, pull it, code it, stage it, commit, push it, rebase it... "
"technologic.*"
msgstr ""
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 ""
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 ""
msgid "Branching"
msgstr ""
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 ""
msgid "This command is equivalent:"
msgstr ""
msgid "If you want to go back to the ``master`` branch, you'd use:"
msgstr ""
msgid ""
"You can see which branch you are currently on with the ``git branch`` "
"command:"
msgstr ""
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 ""
msgid "Updating your branch"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Making changes"
msgstr ""
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 ""
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 ""
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 ""
msgid ""
"``git diff`` will show you the current unstaged changes, i.e. the "
"differences between your working directory and the staging area."
msgstr ""
msgid ""
"``git checkout -- <files>`` will undo the unstaged changes to the given "
"files."
msgstr ""
msgid "``git add <files>`` will *stage* the changes on the listed files."
msgstr ""
msgid ""
"``git diff --staged`` will show the current staged changes, i.e. the "
"differences between the staging area and the last commit."
msgstr ""
msgid "``git reset HEAD <files>`` will *unstage* changes to the listed files."
msgstr ""
msgid ""
"``git status`` will show you what are the currently staged and unstaged "
"modifications."
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Here's how the shell history could look like on our example:"
msgstr ""
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 ""
msgid "Pushing changes to a remote"
msgstr ""
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 ""
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 ""
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 ""
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 ""
msgid "Issuing a pull request"
msgstr ""
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 ""
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 ""
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 ""
msgid "Modifying a pull request"
msgstr ""
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 ""
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 ""
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 ""
msgid "The interactive rebase"
msgstr ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
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 ""
msgid "Deleting a Git branch"
msgstr ""
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 ""
msgid "To delete our better Project Manager branch locally, use this command:"
msgstr ""
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 ""
msgid "Next, to delete the remote branch on GitHub use this command:"
msgstr ""
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 ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,138 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Testing pull requests"
msgstr "Godotin asennus"
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 ""
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 ""
msgid "Downloading a compiled build"
msgstr ""
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 ""
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 ""
msgid "If you have a GitHub account"
msgstr ""
msgid ""
"Open the pull request page. Click the **Checks** tab near the top of the "
"page:"
msgstr ""
msgid "Click the **Artifacts** dropdown on the right of the page:"
msgstr ""
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 ""
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 ""
msgid "If you don't have a GitHub account"
msgstr ""
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 ""
msgid ""
"Open the pull request page. Click the *fork*'s branch name near the top of "
"the page:"
msgstr ""
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 ""
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 ""
msgid "Click the URL of the artifact you wish to download."
msgstr ""
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 ""
msgid "Compiling a pull request branch from source"
msgstr ""
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 ""
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 ""
msgid ""
"Extract the ZIP archive and follow the :ref:`compiling <toc-devel-"
"compiling>` instructions for your operating system."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Setting up the project"
msgstr "Projektin perustus"
msgid "In this short first part, we'll set up and organize the project."
msgstr ""
#, fuzzy
msgid "Launch Godot and create a new project."
msgstr "Uuden projektin luominen"
msgid ""
"When creating the new project, you only need to choose a valid *Project "
"Path*. You can leave the other default settings alone."
msgstr ""
msgid "GDScript"
msgstr "GDScript"
#, fuzzy
msgid ""
"Download `dodge_the_creeps_2d_assets.zip <https://github.com/godotengine/"
"godot-docs-project-starters/releases/download/latest-4.x/"
"dodge_the_creeps_2d_assets.zip>`_. The archive contains the images and "
"sounds you'll be using to make the game. Extract the archive and move the "
"``art/`` and ``fonts/`` directories to your project's directory."
msgstr ""
"Käynnistä Godot ja luo uusi projekti. Lataa sen jälkeen :download:"
"`dodge_assets.zip <files/dodge_assets.zip>` - kuvat ja äänet, joita tulet "
"käyttämään pelin tekemisessä. Pura nämä tiedostot projektisi kansioon."
msgid "C#"
msgstr ""
msgid ""
"Ensure that you have the required dependencies to use C# in Godot. You need "
"the latest stable .NET SDK, and an editor such as VS Code. See :ref:"
"`doc_c_sharp_setup`."
msgstr ""
msgid "C++"
msgstr ""
msgid ""
"The C++ part of this tutorial wasn't rewritten for the new GDExtension "
"system yet."
msgstr ""
#, fuzzy
msgid "Your project folder should look like this."
msgstr "Skenepuusi pitäisi näyttää tältä:"
#, fuzzy
msgid ""
"This game is designed for portrait mode, so we need to adjust the size of "
"the game window. Click on *Project -> Project Settings* to open the project "
"settings window and in the left column, open the *Display -> Window* tab. "
"There, set \"Viewport Width\" to ``480`` and \"Viewport Height\" to ``720``."
msgstr ""
"Tämä peli käyttää potrettitilaa, joten meidän täytyy säätää peli-ikkunan "
"kokoa. Napsauta Projekti -> Projektin asetukset -> Display -> Window, ja "
"aseta \"Width\" arvoon ``480`` ja \"Height\" arvoon ``720``."
msgid ""
"Also, under the **Stretch** options, set **Mode** to ``canvas_items`` and "
"**Aspect** to ``keep``. This ensures that the game scales consistently on "
"different sized screens."
msgstr ""
msgid "Organizing the project"
msgstr "Projektin järjestäminen"
msgid ""
"In this project, we will make 3 independent scenes: ``Player``, ``Mob``, and "
"``HUD``, which we will combine into the game's ``Main`` scene."
msgstr ""
#, fuzzy
msgid ""
"In a larger project, it might be useful to create folders to hold the "
"various scenes and their scripts, but for this relatively small game, you "
"can save your scenes and scripts in the project's root folder, identified by "
"``res://``. You can see your project folders in the FileSystem dock in the "
"lower left corner:"
msgstr ""
"Teemme tähän projektiin kolme itsenäistä skeneä: ``Player``, ``Mob``, ja "
"``HUD``, jotka yhdistämme pelin ``Main`` skeneen. Suuremmassa projektissa "
"voisi olla hyödyllistä tehdä kansioita eri skeneille ja niiden skripteille, "
"mutta tätä suhteellisen pientä peliä varten voit tallentaa skenesi ja "
"skriptisi juurikansioon, johon viitataan ``res://``. Näet projektisi kansiot "
"Tiedostojärjestelmä-telakassa vasemmassa alakulmassa:"
msgid ""
"With the project in place, we're ready to design the player scene in the "
"next lesson."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,193 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Creating the player scene"
msgstr "Polygonien luonti"
msgid ""
"With the project settings in place, we can start working on the player-"
"controlled character."
msgstr ""
#, fuzzy
msgid ""
"The first scene will define the ``Player`` object. One of the benefits of "
"creating a separate Player scene is that we can test it separately, even "
"before we've created other parts of the game."
msgstr ""
"Ensimmäinen skene, jonka teemme, määrittelee ``Player`` objektin. Yksi etu "
"erillisen pelaajaskenen luomisesta on, että voimme testata sitä erillisesti, "
"jo ennen kuin olemme luoneet pelin muut osat."
msgid "Node structure"
msgstr "Solmurakenne"
msgid ""
"To begin, we need to choose a root node for the player object. As a general "
"rule, a scene's root node should reflect the object's desired functionality "
"- what the object *is*. Click the \"Other Node\" button and add an :ref:"
"`Area2D <class_Area2D>` node to the scene."
msgstr ""
msgid ""
"Godot will display a warning icon next to the node in the scene tree. You "
"can ignore it for now. We will address it later."
msgstr ""
"Godot näyttää varoitus kuvakkeen solmun vieressä skenepuussa. Voit sivuuttaa "
"sen nyt. Me huomioimme sen myöhemmin."
#, fuzzy
msgid ""
"With ``Area2D`` we can detect objects that overlap or run into the player. "
"Change the node's name to ``Player`` by double-clicking on it. Now that "
"we've set the scene's root node, we can add additional nodes to give it more "
"functionality."
msgstr ""
"``Area2D`` solmulla voimme tunnistaa objektit, jotka ovat pelaajan kanssa "
"päällekäin tai törmäävät siihen. Muuta sen nimeksi ``Player`` napsauttamalla "
"solmun nimeä. Tämä on skenen juurisolmu. Voimme lisätä lisää solmuja "
"pelaajalle lisätäksemme toiminnallisuutta."
#, fuzzy
msgid ""
"Before we add any children to the ``Player`` node, we want to make sure we "
"don't accidentally move or resize them by clicking on them. Select the node "
"and click the icon to the right of the lock. Its tooltip says \"Make "
"selected node's children not selectable.\""
msgstr ""
"Ennen kuin lisäämme ``Player`` solmulle yhtään alisolmuja, haluamme pitää "
"huolen ettemme vahingossa siirrä niitä tai muuta niiden kokoa napsauttamalla "
"niitä. Valitse solmu ja napsauta lukon vasemmalla puolella olevaa kuvaketta; "
"sen työkaluvihjeessä lukee \"Varmistaa, ettei objektin alisolmuja voi valita."
"\""
#, fuzzy
msgid ""
"Save the scene. Click Scene -> Save, or press :kbd:`Ctrl + S` on Windows/"
"Linux or :kbd:`Cmd + S` on macOS."
msgstr ""
"Tallenna skene. Napsauta Skene -> Tallenna skene, tai paina ``Ctrl+S`` "
"Windowsissa tai Linuxissa, tai ``Command+S`` Macissa."
msgid "For this project, we will be following the Godot naming conventions."
msgstr "Tässä projektissa noudatamme Godotin nimeämiskäytäntöjä."
msgid ""
"**GDScript**: Classes (nodes) use PascalCase, variables and functions use "
"snake_case, and constants use ALL_CAPS (See :ref:`doc_gdscript_styleguide`)."
msgstr ""
"**GDScript**: Luokat (solmut) käyttävät PascalCase tyyliä, muuttujat ja "
"funktiot käyttävät snake_case tyyliä, ja vakiot käyttävät ALL_CAPS tyyliä "
"(katso :ref:`doc_gdscript_styleguide`)."
#, fuzzy
msgid ""
"**C#**: Classes, export variables and methods use PascalCase, private fields "
"use _camelCase, local variables and parameters use camelCase (See :ref:"
"`doc_c_sharp_styleguide`). Be careful to type the method names precisely "
"when connecting signals."
msgstr ""
"**C#**: Luokat, vientimuuttujat ja metodit käyttävät PascalCase tyyliä, "
"yksityiset kentät käyttävät _camelCase tyyliä, paikalliset muuttujat ja "
"parametrit käyttävät camelCase tyyliä (katso :ref:"
"`doc_c_sharp_styleguide`). Ole huolellinen ja kirjoita metodien nimet "
"tarkasti kytkiessäsi signaaleja."
msgid "Sprite animation"
msgstr "Spriten animaatio"
#, fuzzy
msgid ""
"Click on the ``Player`` node and add (:kbd:`Ctrl + A`) a child node :ref:"
"`AnimatedSprite2D <class_AnimatedSprite2D>`. The ``AnimatedSprite2D`` will "
"handle the appearance and animations for our player. Notice that there is a "
"warning symbol next to the node. An ``AnimatedSprite2D`` requires a :ref:"
"`SpriteFrames <class_SpriteFrames>` resource, which is a list of the "
"animations it can display. To create one, find the ``Sprite Frames`` "
"property under the ``Animation`` tab in the Inspector and click \"[empty]\" -"
"> \"New SpriteFrames\". Click again to open the \"SpriteFrames\" panel:"
msgstr ""
"Napsauta ``Player`` solmua ja lisää :ref:`AnimatedSprite "
"<class_AnimatedSprite>` solmu sen alisolmuksi. ``AnimatedSprite`` hoitaa "
"pelaajamme ulkoasun ja animaatiot. Huomaa, että solmun vieressä on "
"varoitusmerkki. ``AnimatedSprite`` tarvitsee :ref:`SpriteFrames "
"<class_SpriteFrames>` resurssin, joka on lista animaatioista, joita se voi "
"toistaa. Luodaksesi sellaisen, etsi ``Frames`` ominaisuus Tarkastelijasta ja "
"napsauta \"[empty]\" -> \"New SpriteFrames\". Napsauta uudelleen avataksesi "
"\"SpriteFrames\" paneelin:"
#, fuzzy
msgid ""
"On the left is a list of animations. Click the \"default\" one and rename it "
"to \"walk\". Then click the \"Add Animation\" button to create a second "
"animation named \"up\". Find the player images in the \"FileSystem\" tab - "
"they're in the ``art`` folder you unzipped earlier. Drag the two images for "
"each animation, named ``playerGrey_up[1/2]`` and ``playerGrey_walk[1/2]``, "
"into the \"Animation Frames\" side of the panel for the corresponding "
"animation:"
msgstr ""
"Vasemmalla on lista animaatioista. Napsauta \"default\" nimistä ja anna "
"sille uudeksi nimeksi \"right\". Napsauta sen jälkeen \"Lisää\" painiketta "
"luodaksesi toisen animaation, jonka nimeksi tulee \"up\". Vedä kullekin "
"animaatiolle kaksi kuvaa, nimeltään ``playerGrey_up[1/2]`` ja "
"``playerGrey_walk[1/2]``, paneelin \"Animaatioruudut\" puolelle:"
#, fuzzy
msgid ""
"The player images are a bit too large for the game window, so we need to "
"scale them down. Click on the ``AnimatedSprite2D`` node and set the "
"``Scale`` property to ``(0.5, 0.5)``. You can find it in the Inspector under "
"the ``Node2D`` heading."
msgstr ""
"Pelaajakuvat on hieman liian suuria peli-ikkunalle, joten meidän täytyy "
"pienentää niitä. Napsauta ``AnimatedSprite`` solmua ja aseta ``Scale`` "
"ominaisuus arvoon ``(0.5, 0.5)``. Löydät sen Tarkastelijasta ``Node2D`` "
"otsikon alta."
#, fuzzy
msgid ""
"Finally, add a :ref:`CollisionShape2D <class_CollisionShape2D>` as a child "
"of ``Player``. This will determine the player's \"hitbox\", or the bounds of "
"its collision area. For this character, a ``CapsuleShape2D`` node gives the "
"best fit, so next to \"Shape\" in the Inspector, click \"[empty]\" -> \"New "
"CapsuleShape2D\". Using the two size handles, resize the shape to cover the "
"sprite:"
msgstr ""
"Lisää lopuksi :ref:`CollisionShape2D <class_CollisionShape2D>` ``Player`` "
"solmun alle. Tämä määrittelee pelaajan \"osumalaatikon\" tai törmäysalueen "
"rajat. Tälle hahmolle sopii parhaiten ``CapsuleShape2D`` solmu, joten "
"napsauta Tarkastelijassa \"Shape\" ominaisuuden vierestä \"[empty]\" -> "
"\"New CapsuleShape2D\". Käyttäen kahta kahvaa, venytä muoto kattamaan koko "
"sprite:"
msgid "When you're finished, your ``Player`` scene should look like this:"
msgstr "Kun olet valmis, ``Player`` skenesi pitäisi näyttää tältä:"
msgid "Make sure to save the scene again after these changes."
msgstr ""
msgid ""
"In the next part, we'll add a script to the player node to move and animate "
"it. Then, we'll set up collision detection to know when the player got hit "
"by something."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,435 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Coding the player"
msgstr "Pelaajan liikuttaminen"
msgid ""
"In this lesson, we'll add player movement, animation, and set it up to "
"detect collisions."
msgstr ""
#, fuzzy
msgid ""
"To do so, we need to add some functionality that we can't get from a built-"
"in node, so we'll add a script. Click the ``Player`` node and click the "
"\"Attach Script\" button:"
msgstr ""
"Nyt meidän täytyy lisätä hiukan toiminnallisuutta, jota emme voi saada "
"valmiilta solmulta, joten lisäämme skriptin. Napsauta ``Player`` solmua ja "
"\"Lisää skripti\" painiketta:"
msgid ""
"In the script settings window, you can leave the default settings alone. "
"Just click \"Create\":"
msgstr ""
"Skriptin asetukset -ikkunassa voit antaa oletusasetuksien olla sellaisenaan. "
"Napsauta vain \"Luo\":"
msgid ""
"If you're creating a C# script or other languages, select the language from "
"the `language` drop down menu before hitting create."
msgstr ""
"Jos olet luomassa C#-skriptiä tai muun kielistä skriptiä, valitse kieli "
"`kieli`-pudotusvalikosta ennen kuin huitaiset luontinappia."
msgid ""
"If this is your first time encountering GDScript, please read :ref:"
"`doc_scripting` before continuing."
msgstr ""
msgid "Start by declaring the member variables this object will need:"
msgstr ""
"Aloita luomalla ne jäsenmuuttujat, jotka tämä objekti tulee tarvitsemaan:"
msgid ""
"Using the ``export`` keyword on the first variable ``speed`` allows us to "
"set its value in the Inspector. This can be handy for values that you want "
"to be able to adjust just like a node's built-in properties. Click on the "
"``Player`` node and you'll see the property now appears in the \"Script "
"Variables\" section of the Inspector. Remember, if you change the value "
"here, it will override the value written in the script."
msgstr ""
"Käyttäen ``export`` avainsanaa ensimmäiselle muuttujalle ``speed`` antaa "
"meidän asettaa sen arvon Tarkastelijassa. Se voi olla kätevää arvoille, "
"joita haluat säätää kuin ne olisivat solmun valmiita ominaisuuksia. Napsauta "
"``Player`` solmua ja aseta nopeusominaisuudeksi ``400``."
msgid ""
"If you're using C#, you need to (re)build the project assemblies whenever "
"you want to see new export variables or signals. This build can be manually "
"triggered by clicking the \"Build\" button at the top right of the editor."
msgstr ""
msgid ""
"A manual build can also be triggered from the MSBuild Panel. Click the word "
"\"MSBuild\" at the bottom of the editor window to reveal the MSBuild Panel, "
"then click the \"Build\" button."
msgstr ""
msgid ""
"The ``_ready()`` function is called when a node enters the scene tree, which "
"is a good time to find the size of the game window:"
msgstr ""
"``_ready()`` funktiota kutsutaan, kun solmu lisätään skenepuuhun, mikä on "
"hyvä hetki hakea peli-ikkunan koko:"
msgid ""
"Now we can use the ``_process()`` function to define what the player will "
"do. ``_process()`` is called every frame, so we'll use it to update elements "
"of our game, which we expect will change often. For the player, we need to "
"do the following:"
msgstr ""
"Nyt voimme käyttää ``_process()`` funktiota määrittelemään mitä pelaaja "
"tekee. ``_process()`` funktiota kutsutaan jokaisella ruudunpäivityksellä, "
"joten käytämme sitä päivittämään pelimme niitä osasia joiden odotamme "
"muuttuvan usein. Pelaajan osalta teemme siinä seuraavaa:"
msgid "Check for input."
msgstr "Tarkista syöte."
msgid "Move in the given direction."
msgstr "Liiku annettuun suuntaan."
msgid "Play the appropriate animation."
msgstr "Toista asiaankuuluva animaatio."
#, fuzzy
msgid ""
"First, we need to check for input - is the player pressing a key? For this "
"game, we have 4 direction inputs to check. Input actions are defined in the "
"Project Settings under \"Input Map\". Here, you can define custom events and "
"assign different keys, mouse events, or other inputs to them. For this game, "
"we will map the arrow keys to the four directions."
msgstr ""
"Ensin meidän täytyy tarkistaa syöte - painaako pelaaja jotain näppäintä? "
"Tässä pelissä meillä on neljän suunnan syötteet tarkistettavana. "
"Syötetoiminnot on määritelty Projektin asetuksissa kohdassa \"Input Map\". "
"Voit määritellä omia tapahtumia ja asettaa niille eri näppäimiä, "
"hiiritapahtumia ja muita syötteitä. Tässä esimerkissä käytämme "
"oletustapahtumia, jotka on asetettu näppäimistön nuolinäppäimille."
msgid ""
"Click on *Project -> Project Settings* to open the project settings window "
"and click on the *Input Map* tab at the top. Type \"move_right\" in the top "
"bar and click the \"Add\" button to add the ``move_right`` action."
msgstr ""
msgid ""
"We need to assign a key to this action. Click the \"+\" icon on the right, "
"to open the event manager window."
msgstr ""
msgid ""
"The \"Listening for Input...\" field should automatically be selected. Press "
"the \"right\" key on your keyboard, and the menu should look like this now."
msgstr ""
msgid ""
"Select the \"ok\" button. The \"right\" key is now associated with the "
"``move_right`` action."
msgstr ""
msgid "Repeat these steps to add three more mappings:"
msgstr ""
msgid "``move_left`` mapped to the left arrow key."
msgstr ""
msgid "``move_up`` mapped to the up arrow key."
msgstr ""
msgid "And ``move_down`` mapped to the down arrow key."
msgstr ""
#, fuzzy
msgid "Your input map tab should look like this:"
msgstr "Skenepuusi pitäisi näyttää tältä:"
msgid "Click the \"Close\" button to close the project settings."
msgstr ""
msgid ""
"We only mapped one key to each input action, but you can map multiple keys, "
"joystick buttons, or mouse buttons to the same input action."
msgstr ""
#, fuzzy
msgid ""
"You can detect whether a key is pressed using ``Input.is_action_pressed()``, "
"which returns ``true`` if it's pressed or ``false`` if it isn't."
msgstr ""
"Voit tunnistaa onko näppäintä painettu käyttämällä ``Input."
"is_action_pressed()`` funktiota, joka palauttaa ``true``, jos sitä on "
"painettu ja ``false`` jos ei ole."
#, fuzzy
msgid ""
"We start by setting the ``velocity`` to ``(0, 0)`` - by default, the player "
"should not be moving. Then we check each input and add/subtract from the "
"``velocity`` to obtain a total direction. For example, if you hold ``right`` "
"and ``down`` at the same time, the resulting ``velocity`` vector will be "
"``(1, 1)``. In this case, since we're adding a horizontal and a vertical "
"movement, the player would move *faster* diagonally than if it just moved "
"horizontally."
msgstr ""
"Aloitamme asettamalla ``velocity`` arvoksi ``(0, 0)`` lähtökohtaisesti "
"pelihahmon ei pitäisi olla liikkeessä. Tarkistamme sitten kunkin syötteen ja "
"kasvatamme/vähennämme ``velocity`` arvoa saadaksemme lopullisen suunnan. Jos "
"esimerkiksi painat ``oikealle`` ja ``alas`` samanaikasesti, lopputuloksena "
"oleva ``velocity`` vektori on ``(1, 1)``. Tässä tapauksessa, koska "
"kasvatamme sekä vaaka- että pystyliikettä, pelihahmo liikkuisi *nopeammin* "
"kuin jos se liikkuisi vain vaakasuuntaisesti."
#, fuzzy
msgid ""
"We can prevent that if we *normalize* the velocity, which means we set its "
"*length* to ``1``, then multiply by the desired speed. This means no more "
"fast diagonal movement."
msgstr ""
"Voimme estää sen, jos *normalisoimme* nopeusvektorin, mikä tarkoittaa että "
"asetamme sen *pituudeksi* ``1`` ja kerromme sen halutulla nopeudella. Tämän "
"seurauksena vinottainen liike ei ole enää nopeampaa."
msgid ""
"If you've never used vector math before, or need a refresher, you can see an "
"explanation of vector usage in Godot at :ref:`doc_vector_math`. It's good to "
"know but won't be necessary for the rest of this tutorial."
msgstr ""
"Jos et ole koskaan käyttänyt vektorimatematiikkaa, tai tarvitset kertausta, "
"voit katsoa selityksen Godotin vektorien käytöstä: :ref:`doc_vector_math`. "
"Se on hyvä osata, mutta ei ole välttämätön oppaan loppuosan kannalta."
#, fuzzy
msgid ""
"We also check whether the player is moving so we can call ``play()`` or "
"``stop()`` on the AnimatedSprite2D."
msgstr ""
"Tarkistamme myös liikkuuko pelaaja, jotta voimme aloittaa tai lopettaa "
"AnimatedSprite animaation."
#, fuzzy
msgid ""
"``$`` is shorthand for ``get_node()``. So in the code above, "
"``$AnimatedSprite2D.play()`` is the same as ``get_node(\"AnimatedSprite2D\")."
"play()``."
msgstr ""
"``$`` on lyhenne ``get_node()`` syntaksille. Toisin sanoen, yllä olevassa "
"koodissa ``$AnimatedSprite.play()`` on sama kuin "
"``get_node(\"AnimatedSprite\").play()``."
#, fuzzy
msgid ""
"In GDScript, ``$`` returns the node at the relative path from the current "
"node, or returns ``null`` if the node is not found. Since AnimatedSprite2D "
"is a child of the current node, we can use ``$AnimatedSprite2D``."
msgstr ""
"GDScriptissä, ``$`` palauttaa solmun, joka löytyy suhteellisesta polusta "
"nykyiseen solmuun nähden, tai palauttaa ``null`` jos solmua ei löydy. Koska "
"AnimatedSprite on nykyisen solmun alisolmu, voimme käyttää "
"``$AnimatedSprite`` syntaksia."
#, fuzzy
msgid ""
"Now that we have a movement direction, we can update the player's position. "
"We can also use ``clamp()`` to prevent it from leaving the screen. "
"*Clamping* a value means restricting it to a given range. Add the following "
"to the bottom of the ``_process`` function (make sure it's not indented "
"under the `else`):"
msgstr ""
"Nyt kun meillä on liikkumisen suunta, voimme päivittää pelaajan sijainnin ja "
"käyttää ``clamp()`` funktiota estämään sitä poistumasta ruudulta lisäämällä "
"seuraavan ``_process`` funktion loppuun:"
msgid ""
"The `delta` parameter in the `_process()` function refers to the *frame "
"length* - the amount of time that the previous frame took to complete. Using "
"this value ensures that your movement will remain consistent even if the "
"frame rate changes."
msgstr ""
"`delta`parametri `_process()` funktiossa viittaa *ruudun (animaatiossa) "
"pituuteen* -aikaan joka kului edellisen ruudun suorittamiseen. Tätä arvoa "
"käyttämällä varmistutaan että liike on säännönmukainen vaikka ruudun "
"päivitysnopeus muuttuisi."
#, fuzzy
msgid ""
"Click \"Play Scene\" (:kbd:`F6`, :kbd:`Cmd + R` on macOS) and confirm you "
"can move the player around the screen in all directions."
msgstr ""
"Napsauta \"Pelaa skeneä\" (``F6``) ja varmista, että voit liikuttaa pelaajaa "
"ympäri ruutua kaikkiin suuntiin."
msgid "If you get an error in the \"Debugger\" panel that says"
msgstr ""
msgid ""
"``Attempt to call function 'play' in base 'null instance' on a null "
"instance``"
msgstr ""
#, fuzzy
msgid ""
"this likely means you spelled the name of the AnimatedSprite2D node wrong. "
"Node names are case-sensitive and ``$NodeName`` must match the name you see "
"in the scene tree."
msgstr ""
"Jos saat \"Debuggeri\" paneeliin virheen, jossa mainitaan \"null instance\", "
"se johtuu todennäköisesti siitä, että kirjoitit nimen väärin. Solmujen nimet "
"ovat kirjainkoosta riippuvaisia ja ``$SolmunNimi`` tai "
"``get_node(\"SolmunNimi\")`` täytyy vastata skenepuussa näkyvää nimeä."
msgid "Choosing animations"
msgstr "Animaatioiden valinta"
#, fuzzy
msgid ""
"Now that the player can move, we need to change which animation the "
"AnimatedSprite2D is playing based on its direction. We have the \"walk\" "
"animation, which shows the player walking to the right. This animation "
"should be flipped horizontally using the ``flip_h`` property for left "
"movement. We also have the \"up\" animation, which should be flipped "
"vertically with ``flip_v`` for downward movement. Let's place this code at "
"the end of the ``_process()`` function:"
msgstr ""
"Nyt kun pelaaja voi liikkua, meidän täytyy vaihtaa AnimatedSprite solmun "
"toistama animaatio suuntaan perustuen. Meillä on \"oikealle\" animaatio, "
"joka pitäisi vasenta animaatiota varten kääntää vaakasuunnassa toisinpäin "
"käyttäen ``flip_h`` ominaisuutta, sekä \"ylös\" animaatio, joka pitäisi "
"alaspäin animaatiota varten kääntää pystysuunnassa toisinpäin ``flip_v`` "
"ominaisuudella. Lisätään tämä koodinpätkä ``_process()`` funktiomme loppuun:"
#, fuzzy
msgid ""
"The boolean assignments in the code above are a common shorthand for "
"programmers. Since we're doing a comparison test (boolean) and also "
"*assigning* a boolean value, we can do both at the same time. Consider this "
"code versus the one-line boolean assignment above:"
msgstr ""
"Boolean-sijoitukset ylläolevassa koodissa ovat yleisiä pikakirjoitustapoja "
"ohjelmoijille. Tarkastele tätä koodia yllä oleviin lyhennettyihin boolean-"
"sijoituksiin verrattuna:"
msgid ""
"Play the scene again and check that the animations are correct in each of "
"the directions."
msgstr ""
msgid ""
"A common mistake here is to type the names of the animations wrong. The "
"animation names in the SpriteFrames panel must match what you type in the "
"code. If you named the animation ``\"Walk\"``, you must also use a capital "
"\"W\" in the code."
msgstr ""
#, fuzzy
msgid ""
"When you're sure the movement is working correctly, add this line to "
"``_ready()``, so the player will be hidden when the game starts:"
msgstr ""
"Pelaa skene uudelleen ja tarkista, että animaatiot toimivat oikein kuhunkin "
"suuntaan. Kun olet varma, että liikkuminen toimii oikein, lisää tämä rivi "
"``_ready()`` funktioon, jotta pelihahmo on piilotettu pelin alkaessa:"
msgid "Preparing for collisions"
msgstr "Törmäyksiin valmistautuminen"
msgid ""
"We want ``Player`` to detect when it's hit by an enemy, but we haven't made "
"any enemies yet! That's OK, because we're going to use Godot's *signal* "
"functionality to make it work."
msgstr ""
"Haluamme, että ``Player`` havaitsee milloin vihollinen on törmännyt siihen, "
"mutta emme ole tehneet vielä vihollisia! Se on OK, koska aiomme laittaa sen "
"toimimaan Godotin *signal* toiminnallisuudella."
msgid ""
"Add the following at the top of the script. If you're using GDScript, add it "
"after ``extends Area2D``. If you're using C#, add it after ``public partial "
"class Player : Area2D``:"
msgstr ""
msgid ""
"This defines a custom signal called \"hit\" that we will have our player "
"emit (send out) when it collides with an enemy. We will use ``Area2D`` to "
"detect the collision. Select the ``Player`` node and click the \"Node\" tab "
"next to the Inspector tab to see the list of signals the player can emit:"
msgstr ""
"Tämä määrittelee mukautetun signaalin nimeltä \"hit\", jonka laitamme "
"pelaajamme lähettämään, kun se törmää viholliseen. Käytämme ``Area2D`` "
"solmua tunnistamaan törmäyksen. Valitse ``Player`` solmu ja napsauta "
"\"Solmu\" välilehteä Tarkastelijan vieressä nähdäksesi listan signaaleista, "
"joita pelaaja voi lähettää:"
#, fuzzy
msgid ""
"Notice our custom \"hit\" signal is there as well! Since our enemies are "
"going to be ``RigidBody2D`` nodes, we want the ``body_entered(body: "
"Node2D)`` signal. This signal will be emitted when a body contacts the "
"player. Click \"Connect..\" and the \"Connect a Signal\" window appears. We "
"don't need to change any of these settings so click \"Connect\" again. Godot "
"will automatically create a function in your player's script."
msgstr ""
"Huomaa, että oma \"hit\" signaalimme on myös siellä! Koska viholliset "
"tulevat olemaan ``RigidBody2D`` solmuja, haluamme ``body_entered( Object "
"body )`` signaalin; se lähetetään kappaleen osuessa pelaajaan. Napsauta "
"\"Yhdistä...\" ja sen jälkeen \"Yhdistä\" uudelleen \"Yhdistetään "
"signaalia\" ikkunassa. Meidän ei tarvitse muuttaa mitään näistä asetuksista "
" Godot luo automaattisesti funktion pelaajasi skriptiin. Tätä funktiota "
"kutsutaan aina, kun signaali lähetetään se *käsittelee* signaalin."
msgid ""
"Note the green icon indicating that a signal is connected to this function. "
"Add this code to the function:"
msgstr ""
msgid ""
"Each time an enemy hits the player, the signal is going to be emitted. We "
"need to disable the player's collision so that we don't trigger the ``hit`` "
"signal more than once."
msgstr ""
"Joka kerta kun vihollinen osuu pelaajaan, signaali välitetään. Meidän täytyy "
"poistaa käytöstä pelaajan törmäys ettei se laukaise enää ``hit`` signaalia "
"enempää kuin kerran."
#, fuzzy
msgid ""
"Disabling the area's collision shape can cause an error if it happens in the "
"middle of the engine's collision processing. Using ``set_deferred()`` tells "
"Godot to wait to disable the shape until it's safe to do so."
msgstr ""
"Poistamalla käytöstä alueen törmäys muodon voi aiheuttaa virheen mikäli se "
"tapahtuu kesken pelimoottorin törmäyksen prosessoinnin. Käyttämällä "
"``set_deferred()`` funktiota sallii Godotin odottaa käytöstä poistoa, kunnes "
"se on turvallista."
#, fuzzy
msgid ""
"The last piece is to add a function we can call to reset the player when "
"starting a new game."
msgstr ""
"Viimeinen palanen pelaajallemme on lisätä funktio, jota voimme kutsua "
"alustamaan pelaajan pelin alkaessa."
msgid "With the player working, we'll work on the enemy in the next lesson."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,182 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Creating the enemy"
msgstr "Luurangon luonti"
#, fuzzy
msgid ""
"Now it's time to make the enemies our player will have to dodge. Their "
"behavior will not be very complex: mobs will spawn randomly at the edges of "
"the screen, choose a random direction, and move in a straight line."
msgstr ""
"Nyt on aika luoda viholliset, joita pelaajamme täytyy väistellä. Niiden "
"käyttäytyminen ei tule olemaan kovin monimutkaista: vihulaiset ilmestyvät "
"satunnaisesti ruudun reunoille ja liikkuvat satunnaisiin suuntiin suoraa "
"viivaa pitkin, kadoten sitten poistuttuaan ruudulta."
#, fuzzy
msgid ""
"We'll create a ``Mob`` scene, which we can then *instance* to create any "
"number of independent mobs in the game."
msgstr ""
"Rakennamme tämän ``Mob`` skeneen, josta voimme sitten luoda *ilmentymiä* "
"luodaksemme minkä tahansa määrän itsenäisiä vihulaisia peliin."
msgid "Node setup"
msgstr "Solmun järjestely"
#, fuzzy
msgid "Click Scene -> New Scene from the top menu and add the following nodes:"
msgstr "Napsauta Skene -> Uusi skene ja lisää seuraavat solmut:"
msgid ":ref:`RigidBody2D <class_RigidBody2D>` (named ``Mob``)"
msgstr ":ref:`RigidBody2D <class_RigidBody2D>` (nimeltä ``Mob``)"
#, fuzzy
msgid ":ref:`AnimatedSprite2D <class_AnimatedSprite2D>`"
msgstr ":ref:`AnimatedSprite <class_AnimatedSprite>`"
msgid ":ref:`CollisionShape2D <class_CollisionShape2D>`"
msgstr ":ref:`CollisionShape2D <class_CollisionShape2D>`"
#, fuzzy
msgid ":ref:`VisibleOnScreenNotifier2D <class_VisibleOnScreenNotifier2D>`"
msgstr ""
":ref:`VisibilityNotifier2D <class_VisibilityNotifier2D>` (nimeltään "
"``Visibility``)"
msgid ""
"Don't forget to set the children so they can't be selected, like you did "
"with the Player scene."
msgstr ""
"Älä unohda asettaa alisolmuja niin, ettei niitä voi valita, kuten teit "
"Player skenen kanssa."
#, fuzzy
msgid ""
"In the :ref:`RigidBody2D <class_RigidBody2D>` properties, set ``Gravity "
"Scale`` to ``0``, so the mob will not fall downward. In addition, under the :"
"ref:`CollisionObject2D <class_CollisionObject2D>` section, uncheck the ``1`` "
"inside the ``Mask`` property. This will ensure the mobs do not collide with "
"each other."
msgstr ""
":ref:`RigidBody2D <class_RigidBody2D>` ominaisuuksissa, aseta ``Gravity "
"Scale`` arvoon ``0``, jotta vihulainen ei putoa alaspäin. Lisäksi, "
"``PhysicsBody2D`` osiossa, napsauta ``Mask`` ominaisuutta ja poista merkintä "
"ensimmäisestä laatikosta. Tämä varmistaa, etteivät viholliset törmäile "
"toisiinsa."
#, fuzzy
msgid ""
"Set up the :ref:`AnimatedSprite2D <class_AnimatedSprite2D>` like you did for "
"the player. This time, we have 3 animations: ``fly``, ``swim``, and "
"``walk``. There are two images for each animation in the art folder."
msgstr ""
"Kokoa :ref:`AnimatedSprite <class_AnimatedSprite>` kuten teit pelaajahahmon "
"kanssa. Tällä kertaa meillä on kolme animaatiota: ``fly``, ``swim`` ja "
"``walk``. Aseta ``Playing`` ominaisuus Tarkastelijassa \"On\" asentoon ja "
"säädä \"Speed (FPS)\" asetusta kuten esitetty alla. Valitsemme satunnaisesti "
"yhden näistä animaatioista, jotta vihulaisissa on vähän vaihtelua."
msgid ""
"The ``Animation Speed`` property has to be set for each individual "
"animation. Adjust it to ``3`` for all 3 animations."
msgstr ""
msgid ""
"You can use the \"Play Animation\" buttons on the right of the ``Animation "
"Speed`` input field to preview your animations."
msgstr ""
msgid ""
"We'll select one of these animations randomly so that the mobs will have "
"some variety."
msgstr ""
#, fuzzy
msgid ""
"Like the player images, these mob images need to be scaled down. Set the "
"``AnimatedSprite2D``'s ``Scale`` property to ``(0.75, 0.75)``."
msgstr ""
"Kuten pelaajan kuvat, nämä vihollisten kuvatkin täytyy pienentää. Aseta "
"``AnimatedSprite`` solmun ``Scale`` ominaisuus arvoon ``(0.75, 0.75)``."
#, fuzzy
msgid ""
"As in the ``Player`` scene, add a ``CapsuleShape2D`` for the collision. To "
"align the shape with the image, you'll need to set the ``Rotation Degrees`` "
"property to ``90`` (under \"Transform\" in the Inspector)."
msgstr ""
"Kuten ``Player`` skenssä, lisää ``CapsuleShape2D`` törmäyksiä varten. Muodon "
"kohdistamiseksi kuvaan sinun täytyy asettaa ``Rotation Degrees`` "
"ominaisuudeksi ``90`` ``Node2D`` solmussa."
msgid "Save the scene."
msgstr "Tallenna skene."
msgid "Enemy script"
msgstr "Vihollisen skripti"
#, fuzzy
msgid "Add a script to the ``Mob`` like this:"
msgstr "Lisää ``Mob`` solmulle skripti ja lisää seuraavat jäsenmuuttujat:"
#, fuzzy
msgid ""
"Now let's look at the rest of the script. In ``_ready()`` we play the "
"animation and randomly choose one of the three animation types:"
msgstr ""
"Katsokaamme nyt skriptin jäljellä olevaa osaa. ``_ready()`` funktiossa "
"valitsemme yhden kolmesta animaatiotyypistä:"
msgid ""
"First, we get the list of animation names from the AnimatedSprite2D's "
"``frames`` property. This returns an Array containing all three animation "
"names: ``[\"walk\", \"swim\", \"fly\"]``."
msgstr ""
msgid ""
"We then need to pick a random number between ``0`` and ``2`` to select one "
"of these names from the list (array indices start at ``0``). ``randi() % n`` "
"selects a random integer between ``0`` and ``n-1``."
msgstr ""
#, fuzzy
msgid ""
"The last piece is to make the mobs delete themselves when they leave the "
"screen. Connect the ``screen_exited()`` signal of the "
"``VisibleOnScreenNotifier2D`` node to the ``Mob`` and add this code:"
msgstr ""
"Viimeinen pätkä on sitä varten, että vihulaiset tuhoavat itsensä "
"poistuessaan ruudulta. Yhdistä ``Visibility`` solmun ``screen_exited()`` "
"signaali ja lisää tämä koodi:"
msgid "This completes the `Mob` scene."
msgstr "Tämä päättää `Mob` skenen."
msgid ""
"With the player and enemies ready, in the next part, we'll bring them "
"together in a new scene. We'll make enemies spawn randomly around the game "
"board and move forward, turning our project into a playable game."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,301 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "The main game scene"
msgstr "Skenen pystytys"
msgid ""
"Now it's time to bring everything we did together into a playable game scene."
msgstr ""
#, fuzzy
msgid ""
"Create a new scene and add a :ref:`Node <class_Node>` named ``Main``. (The "
"reason we are using Node instead of Node2D is because this node will be a "
"container for handling game logic. It does not require 2D functionality "
"itself.)"
msgstr ""
"Nyt on aika saattaa kaikki yhteen. Luo uusi skene ja lisää siihen :ref:`Node "
"<class_Node>` solmu nimeltä ``Main``. Napsauta \"Ilmentymä\" painiketta ja "
"valitse tallentamasi ``Player.tscn``."
msgid ""
"Click the **Instance** button (represented by a chain link icon) and select "
"your saved ``player.tscn``."
msgstr ""
msgid ""
"Now, add the following nodes as children of ``Main``, and name them as shown "
"(values are in seconds):"
msgstr ""
"Lisää nyt seuraavat solmut ``Main`` solmun alisolmuiksi ja nimeä ne kuten "
"esitetty (arvot ovat sekunteina):"
msgid ""
":ref:`Timer <class_Timer>` (named ``MobTimer``) - to control how often mobs "
"spawn"
msgstr ""
":ref:`Timer <class_Timer>` (nimeltään ``MobTimer``) - ohjaamaan kuinka usein "
"vihulaiset ilmestyvät"
msgid ""
":ref:`Timer <class_Timer>` (named ``ScoreTimer``) - to increment the score "
"every second"
msgstr ""
":ref:`Timer <class_Timer>` (nimeltään ``ScoreTimer``) - kasvattamaan "
"pistelaskuria joka sekunti"
msgid ""
":ref:`Timer <class_Timer>` (named ``StartTimer``) - to give a delay before "
"starting"
msgstr ""
":ref:`Timer <class_Timer>` (nimeltään ``StartTimer``) - antamaan viive ennen "
"aloittamista"
#, fuzzy
msgid ""
":ref:`Marker2D <class_Marker2D>` (named ``StartPosition``) - to indicate the "
"player's start position"
msgstr ""
":ref:`Position2D <class_Position2D>` (nimeltään ``StartPosition``) - "
"merkkaamaan pelaajan aloituspaikkaa"
msgid ""
"Set the ``Wait Time`` property of each of the ``Timer`` nodes as follows:"
msgstr "Aseta kunkin ``Timer`` solmun ``Wait Time`` ominaisuus seuraavasti:"
msgid "``MobTimer``: ``0.5``"
msgstr "``MobTimer``: ``0.5``"
msgid "``ScoreTimer``: ``1``"
msgstr "``ScoreTimer``: ``1``"
msgid "``StartTimer``: ``2``"
msgstr "``StartTimer``: ``2``"
msgid ""
"In addition, set the ``One Shot`` property of ``StartTimer`` to \"On\" and "
"set ``Position`` of the ``StartPosition`` node to ``(240, 450)``."
msgstr ""
"Lisäksi, aseta ``StartTimer`` solmun ``One Shot`` ominaisuus arvoon \"On\", "
"ja aseta ``StartPosition`` solmun ``Position`` ominaisuudeksi ``(240, 450)``."
msgid "Spawning mobs"
msgstr "Vihollisten lisääminen"
msgid ""
"The Main node will be spawning new mobs, and we want them to appear at a "
"random location on the edge of the screen. Add a :ref:`Path2D "
"<class_Path2D>` node named ``MobPath`` as a child of ``Main``. When you "
"select ``Path2D``, you will see some new buttons at the top of the editor:"
msgstr ""
"Main solmu tuottaa uusia vihollisia ja haluamme niiden ilmestyvän "
"satunnaiseen paikkaan ruudun reunalla. Lisää ``Main`` solmun alisolmuksi :"
"ref:`Path2D <class_Path2D>` solmu nimeltä ``MobPath``. Kun valitset "
"``Path2D`` solmun, näet joitakin uusia painikkeita editorin ylälaidassa:"
#, fuzzy
msgid ""
"Select the middle one (\"Add Point\") and draw the path by clicking to add "
"the points at the corners shown. To have the points snap to the grid, make "
"sure \"Use Grid Snap\" and \"Use Smart Snap\" are both selected. These "
"options can be found to the left of the \"Lock\" button, appearing as a "
"magnet next to some dots and intersecting lines, respectively."
msgstr ""
"Valitse keskimmäinen (\"Lisää piste\") ja piirrä polku napsauttelemalla "
"lisätäksesi pisteet kuvattuihin kulmiin. Jotta pisteet kiinnittyisivät "
"ruudukkoon, varmista että \"Tartu ruudukkoon\" on valittuna. Tämä valinta "
"löytyy \"Tarttumisen asetukset\" painikkeen alta \"Lukko\"-painikkeen "
"vasemmalta puolelta, näyttäen kolmelta pystysuorassa rivissä olevalta "
"pisteeltä."
msgid ""
"Draw the path in *clockwise* order, or your mobs will spawn pointing "
"*outwards* instead of *inwards*!"
msgstr ""
"Piirrä polku *myötäpäiväisessä* järjestyksessä, tai vihulaisesi lisääntyvät "
"suunnaten *ulospäin* eikä *sisäänpäin*!"
msgid ""
"After placing point ``4`` in the image, click the \"Close Curve\" button and "
"your curve will be complete."
msgstr ""
"Kuvan pisteen ``4`` lisäyksen jälkeen, napsauta \"Sulje käyrä\" painiketta "
"ja käyrästäsi tulee täysi."
msgid ""
"Now that the path is defined, add a :ref:`PathFollow2D <class_PathFollow2D>` "
"node as a child of ``MobPath`` and name it ``MobSpawnLocation``. This node "
"will automatically rotate and follow the path as it moves, so we can use it "
"to select a random position and direction along the path."
msgstr ""
"Nyt kun polku on määritetty, lisää :ref:`PathFollow2D <class_PathFollow2D>` "
"solmu ``MobPath`` solmun alle ja nimeä se ``MobSpawnLocation``. Tämä solmu "
"kiertyy ja seuraa polkua automaattisesti edetessään, joten voimme käyttää "
"sitä valitsemaan satunnaisen sijainnin ja suunnan polulta."
#, fuzzy
msgid "Your scene should look like this:"
msgstr "Skenepuusi pitäisi näyttää tältä:"
msgid "Main script"
msgstr "Pääskripti"
#, fuzzy
msgid ""
"Add a script to ``Main``. At the top of the script, we use ``@export var "
"mob_scene: PackedScene`` to allow us to choose the Mob scene we want to "
"instance."
msgstr ""
"Lisää skripti ``Main`` solmulle. Skriptin alussa käytämme ``export "
"(PackedScene)`` koodia, jotta voimme valita mistä Mob skenestä haluamme "
"luoda ilmentymän."
msgid ""
"Click the ``Main`` node and you will see the ``Mob Scene`` property in the "
"Inspector under \"Script Variables\"."
msgstr ""
msgid "You can assign this property's value in two ways:"
msgstr ""
#, fuzzy
msgid ""
"Drag ``mob.tscn`` from the \"FileSystem\" dock and drop it in the **Mob "
"Scene** property."
msgstr ""
"Vedä ``Mob.tscn`` \"Tiedostojärjestelmä\" paneelista ja pudota se ``Mob`` "
"ominaisuuteen ``Main`` solmun Skriptimuuttujien alle."
msgid ""
"Click the down arrow next to \"[empty]\" and choose \"Load\". Select ``mob."
"tscn``."
msgstr ""
#, fuzzy
msgid ""
"Next, select the instance of the ``Player`` scene under ``Main`` node in the "
"Scene dock, and access the Node dock on the sidebar. Make sure to have the "
"Signals tab selected in the Node dock."
msgstr ""
"Valitse Button solmu skenepuusta ja valitse sitten \"Solmu\"-välilehti. "
"Varmista seuraavaksi, että \"Signaalit\" on valittuna."
#, fuzzy
msgid ""
"You should see a list of the signals for the ``Player`` node. Find and "
"double-click the ``hit`` signal in the list (or right-click it and select "
"\"Connect...\"). This will open the signal connection dialog. We want to "
"make a new function named ``game_over``, which will handle what needs to "
"happen when a game ends. Type \"game_over\" in the \"Receiver Method\" box "
"at the bottom of the signal connection dialog and click \"Connect\". You are "
"aiming to have the ``hit`` signal emitted from ``Player`` and handled in the "
"``Main`` script. Add the following code to the new function, as well as a "
"``new_game`` function that will set everything up for a new game:"
msgstr ""
"Seuraavaksi, napsauta Player solmua ja yhdistä ``hit`` signaali. Haluamme "
"luoda uuden funktion nimeltä ``game_over``, joka käsittelee sen mitä täytyy "
"tapahtua kun peli loppuu. Kirjoita \"game_over\" \"Yhdistetään signaalia\" "
"ikkunan alalaidassa olevaan \"Method In Node\"-laatikkoon. Lisää seuraava "
"koodi, samoin kuin ``new_game`` funktio asettamaan kaikki valmiiksi uutta "
"peliä varten:"
#, fuzzy
msgid ""
"Now connect the ``timeout()`` signal of each of the Timer nodes "
"(``StartTimer``, ``ScoreTimer``, and ``MobTimer``) to the main script. "
"``StartTimer`` will start the other two timers. ``ScoreTimer`` will "
"increment the score by 1."
msgstr ""
"Yhdistä nyt kunkin Timer solmun (``StartTimer``, ``ScoreTimer`` ja "
"``MobTimer``) ``timeout()`` signaali pääskriptiin. ``StartTimer`` käynnistää "
"kaksi muuta ajastinta. ``ScoreTimer`` kasvattaa pistelaskuria yhdellä."
#, fuzzy
msgid ""
"In ``_on_mob_timer_timeout()``, we will create a mob instance, pick a random "
"starting location along the ``Path2D``, and set the mob in motion. The "
"``PathFollow2D`` node will automatically rotate as it follows the path, so "
"we will use that to select the mob's direction as well as its position. When "
"we spawn a mob, we'll pick a random value between ``150.0`` and ``250.0`` "
"for how fast each mob will move (it would be boring if they were all moving "
"at the same speed)."
msgstr ""
"``_on_MobTimer_timeout()`` funktiossa luomme vihollisilmentymän, valitsemme "
"satunnaisen aloituspaikan ``Path2D`` varrelta, ja sysäämme vihollisen "
"liikkeelle. ``PathFollow2D`` solmu kiertyy automaattisesti seuratessaan "
"polkua, joten hyödynnämme sitä valitsemaan sekä vihollisen suunnan että "
"sijainnin."
msgid ""
"Note that a new instance must be added to the scene using ``add_child()``."
msgstr ""
"Huomaa, että uusi ilmentymä täytyy lisätä skeneen käyttämällä "
"``add_child()`` funktiota."
#, fuzzy
msgid ""
"Why ``PI``? In functions requiring angles, Godot uses *radians*, not "
"degrees. Pi represents a half turn in radians, about ``3.1415`` (there is "
"also ``TAU`` which is equal to ``2 * PI``). If you're more comfortable "
"working with degrees, you'll need to use the ``deg_to_rad()`` and "
"``rad_to_deg()`` functions to convert between the two."
msgstr ""
"GDScript käyttää kulmia tarvitsevissa funktioissa *radiaaneja*, ei asteita. "
"Jos työskentelet mieluummin asteilla, sinun täytyy käyttää ``deg2rad()`` ja "
"``rad2deg()`` funktioita tehdäksesi muunnos niiden välillä."
#, fuzzy
msgid "Testing the scene"
msgstr "Skenen pystytys"
msgid ""
"Let's test the scene to make sure everything is working. Add this "
"``new_game`` call to ``_ready()``:"
msgstr ""
msgid ""
"Let's also assign ``Main`` as our \"Main Scene\" - the one that runs "
"automatically when the game launches. Press the \"Play\" button and select "
"``main.tscn`` when prompted."
msgstr ""
msgid ""
"If you had already set another scene as the \"Main Scene\", you can right "
"click ``main.tscn`` in the FileSystem dock and select \"Set As Main Scene\"."
msgstr ""
msgid ""
"You should be able to move the player around, see mobs spawning, and see the "
"player disappear when hit by a mob."
msgstr ""
msgid ""
"When you're sure everything is working, remove the call to ``new_game()`` "
"from ``_ready()``."
msgstr ""
msgid ""
"What's our game lacking? Some user interface. In the next lesson, we'll add "
"a title screen and display the player's score."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,356 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Heads up display"
msgstr ""
msgid ""
"The final piece our game needs is a User Interface (UI) to display things "
"like score, a \"game over\" message, and a restart button."
msgstr ""
#, fuzzy
msgid ""
"Create a new scene, and add a :ref:`CanvasLayer <class_CanvasLayer>` node "
"named ``HUD``. \"HUD\" stands for \"heads-up display\", an informational "
"display that appears as an overlay on top of the game view."
msgstr ""
"Pelimme tarvitsema viimeinen osa on käyttöliittymä: sillä esitetään "
"sellaisia juttuja kuten pistemäärä, \"game over\"-viesti ja \"aloita "
"alusta\"-painike. Luo uusi skene ja lisää :ref:`CanvasLayer "
"<class_CanvasLayer>` solmu nimeltä ``HUD``. \"HUD\" tulee sanoista \"heads-"
"up display\" (*suom*. heijastusnäyttö). Se on informaatiota sisältävä "
"näyttö, joka piirretään osittaiseksi peitteeksi pelinäkymän päälle."
msgid ""
"The :ref:`CanvasLayer <class_CanvasLayer>` node lets us draw our UI elements "
"on a layer above the rest of the game, so that the information it displays "
"isn't covered up by any game elements like the player or mobs."
msgstr ""
":ref:`CanvasLayer <class_CanvasLayer>` solmu antaa meidän piirtää "
"käyttöliittymäelementtimme muun pelin yläpuolella olevalle kerrokselle, niin "
"että sen esittämä tieto ei jää pelielementtien, kuten pelaaja ja vihollinen, "
"alle."
#, fuzzy
msgid "The HUD needs to display the following information:"
msgstr "Heijastusnäyttö näyttää seuraavat tiedot:"
msgid "Score, changed by ``ScoreTimer``."
msgstr "Pistemäärä, joka muuttuu ``ScoreTimer`` solmun toimesta."
msgid "A message, such as \"Game Over\" or \"Get Ready!\""
msgstr "Viesti, kuten \"Game Over\" tai \"Get Ready!\""
msgid "A \"Start\" button to begin the game."
msgstr "\"Start\"-painike pelin aloittamiseksi."
msgid ""
"The basic node for UI elements is :ref:`Control <class_Control>`. To create "
"our UI, we'll use two types of :ref:`Control <class_Control>` nodes: :ref:"
"`Label <class_Label>` and :ref:`Button <class_Button>`."
msgstr ""
"Pohjasolmu käyttöliittymäelementeille on :ref:`Control <class_Control>`. "
"Luodaksemme käyttöliittymämme käytämme kahdentyyppisiä :ref:`Control "
"<class_Control>` solmuja: :ref:`Label <class_Label>` ja :ref:`Button "
"<class_Button>`."
msgid "Create the following as children of the ``HUD`` node:"
msgstr "Luo seuraavat ``HUD`` solmun alle:"
msgid ":ref:`Label <class_Label>` named ``ScoreLabel``."
msgstr ":ref:`Label <class_Label>` nimeltä ``ScoreLabel``."
#, fuzzy
msgid ":ref:`Label <class_Label>` named ``Message``."
msgstr ":ref:`Label <class_Label>` nimeltä ``MessageLabel``."
msgid ":ref:`Button <class_Button>` named ``StartButton``."
msgstr ":ref:`Button <class_Button>` nimeltä ``StartButton``."
msgid ":ref:`Timer <class_Timer>` named ``MessageTimer``."
msgstr ":ref:`Timer <class_Timer>` nimeltä ``MessageTimer``."
#, fuzzy
msgid ""
"Click on the ``ScoreLabel`` and type a number into the ``Text`` field in the "
"Inspector. The default font for ``Control`` nodes is small and doesn't scale "
"well. There is a font file included in the game assets called \"Xolonium-"
"Regular.ttf\". To use this font, do the following:"
msgstr ""
"Napsauta ``ScoreLabel`` solmua ja kirjoita Tarkastelijassa *Text* kenttään "
"jokin numero. ``Control`` solmujen oletuskirjasin on pieni, eikä skaalaudu "
"hyvin. Pelin asseteissa on mukana kirjasintiedosto nimeltään \"Xolonium-"
"Regular.ttf\". Käyttääksesi tätä kirjasintyyppiä, tee kullekin kolmelle "
"``Control`` solmulle seuraava:"
#, fuzzy
msgid ""
"Under \"Theme Overrides > Fonts\", choose \"Load\" and select the \"Xolonium-"
"Regular.ttf\" file."
msgstr ""
"Napsauta lisäämääsi \"DynamicFont\" kirjasinta, valitse \"Font Data\" alta "
"\"Load\" ja valitse \"Xolonium-Regular.ttf\" tiedosto. Sinun täytyy myös "
"asettaa kirjasimen koko ``Size`` ominaisuudesta. Asetus ``64`` toimii hyvin."
msgid ""
"The font size is still too small, increase it to ``64`` under \"Theme "
"Overrides > Font Sizes\". Once you've done this with the ``ScoreLabel``, "
"repeat the changes for the ``Message`` and ``StartButton`` nodes."
msgstr ""
#, fuzzy
msgid ""
"**Anchors:** ``Control`` nodes have a position and size, but they also have "
"anchors. Anchors define the origin - the reference point for the edges of "
"the node."
msgstr ""
"**Ankkurit ja marginaalit:** ``Control`` solmuilla täytyy olla sijainti ja "
"koko, mutta niillä on myös ankkurit ja marginaalit. Ankkurit määrittävät "
"alkupisteen viitepisteen solmun reunoille. Marginaalit päivittyvät "
"automaattisesti, kun liikutat Control-solmua tai muutat sen kokoa. Ne "
"edustavat etäisyyttä Control-solmun reunoista sen ankkuriin. Katso :ref:"
"`doc_design_interfaces_with_the_control_nodes` tarkempia tietoja varten."
#, fuzzy
msgid ""
"Arrange the nodes as shown below. You can drag the nodes to place them "
"manually, or for more precise placement, use \"Anchor Presets\"."
msgstr ""
"Voit kiskoa solmuja asettaaksesi ne manuaalisesti, tai tarkempaa sijoittelua "
"varten, voit käyttää seuraavia asetuksia:"
msgid "ScoreLabel"
msgstr "ScoreLabel"
msgid "Add the text ``0``."
msgstr ""
msgid ""
"Set the \"Horizontal Alignment\" and \"Vertical Alignment\" to ``Center``."
msgstr ""
msgid "Choose the \"Anchor Preset\" ``Center Top``."
msgstr ""
#, fuzzy
msgid "Message"
msgstr "MessageLabel"
#, fuzzy
msgid "Add the text ``Dodge the creeps!``."
msgstr "*Text* : ``Dodge the Creeps!``"
msgid ""
"Set the \"Autowrap Mode\" to ``Word``, otherwise the label will stay on one "
"line."
msgstr ""
msgid ""
"Under \"Control - Layout/Transform\" set \"Size X\" to ``480`` to use the "
"entire width of the screen."
msgstr ""
msgid "Choose the \"Anchor Preset\" ``Center``."
msgstr ""
msgid "StartButton"
msgstr "StartButton"
#, fuzzy
msgid "Add the text ``Start``."
msgstr "*Text* : ``Start``"
msgid ""
"Under \"Control - Layout/Transform\", set \"Size X\" to ``200`` and \"Size "
"Y\" to ``100`` to add a little bit more padding between the border and text."
msgstr ""
msgid "Choose the \"Anchor Preset\" ``Center Bottom``."
msgstr ""
msgid "Under \"Control - Layout/Transform\", set \"Position Y\" to ``580``."
msgstr ""
#, fuzzy
msgid ""
"On the ``MessageTimer``, set the ``Wait Time`` to ``2`` and set the ``One "
"Shot`` property to \"On\"."
msgstr ""
"Tätä funktiota kutsutaan, kun haluamme näyttää väliaikaisen viestin, kuten "
"\"Get Ready\". Aseta ``MessageTimer`` solmussa ``Wait Time`` arvoksi ``2`` "
"ja aseta ``One Shot`` ominaisuudeksi \"On\"."
msgid "Now add this script to ``HUD``:"
msgstr "Lisää nyt tämä skripti ``HUD`` solmulle:"
#, fuzzy
msgid ""
"We now want to display a message temporarily, such as \"Get Ready\", so we "
"add the following code"
msgstr ""
"Tätä funktiota kutsutaan, kun haluamme näyttää väliaikaisen viestin, kuten "
"\"Get Ready\". Aseta ``MessageTimer`` solmussa ``Wait Time`` arvoksi ``2`` "
"ja aseta ``One Shot`` ominaisuudeksi \"On\"."
#, fuzzy
msgid ""
"We also need to process what happens when the player loses. The code below "
"will show \"Game Over\" for 2 seconds, then return to the title screen and, "
"after a brief pause, show the \"Start\" button."
msgstr ""
"Tätä funktiota kutsutaan kun pelaaja häviää. Se näyttää \"Game Over\" kahden "
"sekunnin ajan, ja palaa sitten alkuruutuun ja näyttää \"Start\" painikkeen "
"lyhyen tauon jälkeen."
msgid ""
"This function is called when the player loses. It will show \"Game Over\" "
"for 2 seconds, then return to the title screen and, after a brief pause, "
"show the \"Start\" button."
msgstr ""
"Tätä funktiota kutsutaan kun pelaaja häviää. Se näyttää \"Game Over\" kahden "
"sekunnin ajan, ja palaa sitten alkuruutuun ja näyttää \"Start\" painikkeen "
"lyhyen tauon jälkeen."
msgid ""
"When you need to pause for a brief time, an alternative to using a Timer "
"node is to use the SceneTree's ``create_timer()`` function. This can be very "
"useful to add delays such as in the above code, where we want to wait some "
"time before showing the \"Start\" button."
msgstr ""
"Kun sinun täytyy pysäyttää koodi hetkeksi vaihtoehto ajastimelle on käyttää "
"skenepuun ``create_timer()`` funktiota. Tämä voi olla todella hyödyllistä "
"luomaan viiveitä kuten ylläolevassa koodissa, missä me haluamme odottaa "
"hetken ennenkuin näytämme \"Start\" painikkeen."
msgid "Add the code below to ``HUD`` to update the score"
msgstr ""
#, fuzzy
msgid ""
"Connect the ``timeout()`` signal of ``MessageTimer`` and the ``pressed()`` "
"signal of ``StartButton``, and add the following code to the new functions:"
msgstr ""
"Yhdistä ``MessageTimer`` solmun ``timeout()`` signaali ja ``StartButton`` "
"solmun ``pressed()`` signaali, ja lisää seuraava koodi uusiin funktioihin:"
msgid "Connecting HUD to Main"
msgstr "HUD- ja Main-skenejen liittäminen"
#, fuzzy
msgid ""
"Now that we're done creating the ``HUD`` scene, go back to ``Main``. "
"Instance the ``HUD`` scene in ``Main`` like you did the ``Player`` scene. "
"The scene tree should look like this, so make sure you didn't miss anything:"
msgstr ""
"Nyt kun olemme saaneet ``HUD`` skenen valmiiksi, tallenna se ja mene "
"takaisin ``Main`` skeneen. Luo ``HUD`` skenestä ilmentymä ``Main`` skeneen, "
"samoin kuin teit ``Player`` skenen kanssa, ja sijoita se alimmaksi puussa. "
"Koko puun pitäisi näyttää tältä, joten varmista ettei mitään jäänyt "
"huomaamatta:"
msgid ""
"Now we need to connect the ``HUD`` functionality to our ``Main`` script. "
"This requires a few additions to the ``Main`` scene:"
msgstr ""
"Nyt meidän täytyy liittää ``HUD`` toiminnallisuus ``Main`` skriptiimme. Tämä "
"edellyttää muutamia lisäyksiä ``Main`` skeneen:"
msgid ""
"In the Node tab, connect the HUD's ``start_game`` signal to the "
"``new_game()`` function of the Main node by clicking the \"Pick\" button in "
"the \"Connect a Signal\" window and selecting the ``new_game()`` method or "
"type \"new_game\" below \"Receiver Method\" in the window. Verify that the "
"green connection icon now appears next to ``func new_game()`` in the script."
msgstr ""
msgid "Remember to remove the call to ``new_game()`` from ``_ready()``."
msgstr ""
msgid ""
"In ``new_game()``, update the score display and show the \"Get Ready\" "
"message:"
msgstr ""
"``new_game()`` funktiossa, päivitä pistenäyttö ja näytä \"Get Ready\" viesti:"
msgid "In ``game_over()`` we need to call the corresponding ``HUD`` function:"
msgstr ""
"``game_over()`` funktiossa meidän täytyy kutsua vastaavaa ``HUD`` funktiota:"
msgid ""
"Just a reminder: we don't want to start the new game automatically, so "
"remove the call to ``new_game()`` in ``_ready()`` if you haven't yet."
msgstr ""
#, fuzzy
msgid ""
"Finally, add this to ``_on_score_timer_timeout()`` to keep the display in "
"sync with the changing score:"
msgstr ""
"Lopuksi, lisää tämä ``_on_ScoreTimer_timeout()`` funktioon pitääksesi näytön "
"synkassa muuttuvan pistemäärän kanssa:"
#, fuzzy
msgid ""
"Now you're ready to play! Click the \"Play the Project\" button. You will be "
"asked to select a main scene, so choose ``main.tscn``."
msgstr ""
"Nyt olet valmis pelaamaan! Napsauta \"Pelaa\" painiketta. Sinua pyydetään "
"valitsemaan pääskene, joten valitse ``Main.tscn``."
msgid "Removing old creeps"
msgstr "Vanhojen creepsien poisto"
#, fuzzy
msgid ""
"If you play until \"Game Over\" and then start a new game right away, the "
"creeps from the previous game may still be on the screen. It would be better "
"if they all disappeared at the start of a new game. We just need a way to "
"tell *all* the mobs to remove themselves. We can do this with the \"group\" "
"feature."
msgstr ""
"Jos pelaat \"Game Over\":iin asti ja aloitat uuden pelin. Vanhat creepsit "
"ovat yhä edelleen ruudulla. Olisi parasta jos ne kaikki katoaisivat uuden "
"pelin aloituksessa."
msgid ""
"In the ``Mob`` scene, select the root node and click the \"Node\" tab next "
"to the Inspector (the same place where you find the node's signals). Next to "
"\"Signals\", click \"Groups\" and you can type a new group name and click "
"\"Add\"."
msgstr ""
msgid ""
"Now all mobs will be in the \"mobs\" group. We can then add the following "
"line to the ``new_game()`` function in ``Main``:"
msgstr ""
msgid ""
"The ``call_group()`` function calls the named function on every node in a "
"group - in this case we are telling every mob to delete itself."
msgstr ""
msgid ""
"The game's mostly done at this point. In the next and last part, we'll "
"polish it a bit by adding a background, looping music, and some keyboard "
"shortcuts."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,180 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Finishing up"
msgstr "Viimeistely"
#, fuzzy
msgid ""
"We have now completed all the functionality for our game. Below are some "
"remaining steps to add a bit more \"juice\" to improve the game experience."
msgstr ""
"Olemme saaneet valmiiksi kaiken toiminnallisuuden pelissämme. Alla on "
"joitakin jäljellä olevia toimenpiteitä pelikokemuksen mehevöittämiseksi. "
"Voit vapaasti laajentaa pelattavuutta omilla ideoillasi."
msgid "Feel free to expand the gameplay with your own ideas."
msgstr ""
msgid "Background"
msgstr "Tausta"
#, fuzzy
msgid ""
"The default gray background is not very appealing, so let's change its "
"color. One way to do this is to use a :ref:`ColorRect <class_ColorRect>` "
"node. Make it the first node under ``Main`` so that it will be drawn behind "
"the other nodes. ``ColorRect`` only has one property: ``Color``. Choose a "
"color you like and select \"Layout\" -> \"Anchors Preset\" -> \"Full Rect\" "
"either in the toolbar at the top of the viewport or in the inspector so that "
"it covers the screen."
msgstr ""
"Oletuksena oleva harmaa tausta ei ole kovinkaan puoleensavetävä, joten "
"vaihdetaan sen väriä. Yksi tapa tehdä se, on käyttää :ref:`ColorRect "
"<class_ColorRect>` solmua. Tee siitä ensimmäinen solmu ``Main`` solmun alle, "
"jotta se piirretään muiden solmujen alle. ``ColorRect`` solmulla on vain "
"yksi ominaisuus: ``Color``. Valitse haluamasi väri ja suurenna ``ColorRect`` "
"solmua niin, että se kattaa koko ruudun."
#, fuzzy
msgid ""
"You could also add a background image, if you have one, by using a "
"``TextureRect`` node instead."
msgstr ""
"Voit lisätä myös taustakuvan, jos sinulla on sellainen, käyttämällä "
"``Sprite`` solmua."
msgid "Sound effects"
msgstr "Ääniefektit"
msgid ""
"Sound and music can be the single most effective way to add appeal to the "
"game experience. In your game assets folder, you have two sound files: "
"\"House In a Forest Loop.ogg\" for background music, and \"gameover.wav\" "
"for when the player loses."
msgstr ""
"Äänet ja musiikki voivat olla kaikkein tehokkain tapa lisätä pelikokemuksen "
"miellekkyyttä. Pelisi asset-kansiossa on kaksi äänitiedostoa: \"House In a "
"Forest Loop.ogg\" taustamusiikille ja \"gameover.wav\" sitä varten, kun "
"pelaaja häviää."
msgid ""
"Add two :ref:`AudioStreamPlayer <class_AudioStreamPlayer>` nodes as children "
"of ``Main``. Name one of them ``Music`` and the other ``DeathSound``. On "
"each one, click on the ``Stream`` property, select \"Load\", and choose the "
"corresponding audio file."
msgstr ""
"Lisää kaksi :ref:`AudioStreamPlayer <class_AudioStreamPlayer>` solmua "
"``Main`` solmun alle. Anna ensimmäiselle nimeksi ``Music`` ja toiselle "
"``DeathSound``. Napsauta kummallekin ``Stream`` ominaisuutta, valitse "
"\"Lataa\" ja valitse nimeä vastaava äänitiedosto."
msgid ""
"All audio is automatically imported with the ``Loop`` setting disabled. If "
"you want the music to loop seamlessly, click on the Stream file arrow, "
"select ``Make Unique``, then click on the Stream file and check the ``Loop`` "
"box."
msgstr ""
msgid ""
"To play the music, add ``$Music.play()`` in the ``new_game()`` function and "
"``$Music.stop()`` in the ``game_over()`` function."
msgstr ""
"Soittaaksesi musiikkia, lisää ``$Music.play()`` ``new_game()`` funktioon ja "
"``$Music.stop()`` ``game_over()`` funktioon."
msgid "Finally, add ``$DeathSound.play()`` in the ``game_over()`` function."
msgstr "Lopuksi, lisää ``$DeathSound.play()`` ``game_over()`` funktioon."
msgid "Keyboard shortcut"
msgstr "Näppäimistön pikanäppäin"
#, fuzzy
msgid ""
"Since the game is played with keyboard controls, it would be convenient if "
"we could also start the game by pressing a key on the keyboard. We can do "
"this with the \"Shortcut\" property of the ``Button`` node."
msgstr ""
"Sillä peliä pelataan näppäin kontrolleilla, olisi käytännöllistä jos pelin "
"voisi aloittaa painamalla näppäintä näppäimistöltä. Yksi tapa tehdä tämä on "
"käyttää \"Shortcut\" ominaisuutta ``Button`` solmusta."
msgid ""
"In a previous lesson, we created four input actions to move the character. "
"We will create a similar input action to map to the start button."
msgstr ""
msgid ""
"Select \"Project\" -> \"Project Settings\" and then click on the \"Input "
"Map\" tab. In the same way you created the movement input actions, create a "
"new input action called ``start_game`` and add a key mapping for the :kbd:"
"`Enter` key."
msgstr ""
msgid ""
"Now would be a good time to add controller support if you have one "
"available. Attach or pair your controller and then under each input action "
"that you wish to add controller support for, click on the \"+\" button and "
"press the corresponding button, d-pad, or stick direction that you want to "
"map to the respective input action."
msgstr ""
msgid ""
"In the ``HUD`` scene, select the ``StartButton`` and find its **Shortcut** "
"property in the Inspector. Create a new :ref:`Shortcut <class_Shortcut>` "
"resource by clicking within the box, open the **Events** array and add a new "
"array element to it by clicking on **Array[InputEvent] (size 0)**."
msgstr ""
msgid ""
"Create a new :ref:`InputEventAction <class_InputEventAction>` and name it "
"``start_game``."
msgstr ""
#, fuzzy
msgid ""
"Now when the start button appears, you can either click it or press :kbd:"
"`Enter` to start the game."
msgstr ""
"Nyt kun aloita näppän ilmestyy voit painaa joko sitä tai :kbd:`Space` "
"aloittaaksesi pelin."
msgid "And with that, you completed your first 2D game in Godot."
msgstr "Näin sait valmiiksi ensimmäisen 2D-pelisi Godotissa."
msgid ""
"You got to make a player-controlled character, enemies that spawn randomly "
"around the game board, count the score, implement a game over and replay, "
"user interface, sounds, and more. Congratulations!"
msgstr ""
msgid ""
"There's still much to learn, but you can take a moment to appreciate what "
"you achieved."
msgstr ""
msgid ""
"And when you're ready, you can move on to :ref:`doc_your_first_3d_game` to "
"learn to create a complete 3D game from scratch, in Godot."
msgstr ""
"Ja kun olet valmis, voit siirtyä kohtaan :ref:`doc_your_first_3d_game` "
"oppiaksesi luomaan täydellisen 3D-pelin tyhjästä Godotissa."
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,145 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Your first 2D game"
msgstr "Ensimmäinen 2D-pelisi"
msgid ""
"In this step-by-step tutorial series, you will create your first complete 2D "
"game with Godot. By the end of the series, you will have a simple yet "
"complete game of your own, like the image below."
msgstr ""
"Tässä vaiheittaisessa opetussarjassa luot ensimmäisen kokonaisen 2D-pelisi "
"Godotilla. Sarjan loppuun mennessä sinulla on yksinkertainen mutta valmis "
"peli, kuten alla olevassa kuvassa."
msgid "|image0|"
msgstr "|image0|"
#, fuzzy
msgid "image0"
msgstr "|image0|"
#, fuzzy
msgid ""
"You will learn how the Godot editor works, how to structure a project, and "
"build a 2D game."
msgstr ""
"Tämä opas opastaa sinut ensimmäisen Godot-projektisi tekemisen läpi. Opit "
"kuinka Godotin editori toimii, kuinka jäsentää projekti ja kuinka rakentaa "
"2D-peli."
#, fuzzy
msgid ""
"This project is an introduction to the Godot engine. It assumes that you "
"have some programming experience already. If you're new to programming "
"entirely, you should start here: :ref:`doc_scripting`."
msgstr ""
"Tämä projekti on johdanto Godotin pelimoottoriin. Siinä oletetaan, että "
"sinulla on jo jotain ohjelmointikokemusta. Jos ohjelmointi on sinulle "
"kokonaan uutta, sinun tulisi aloittaa tästä: :ref:`doc_scripting`."
#, fuzzy
msgid ""
"The game is called \"Dodge the Creeps!\". Your character must move and avoid "
"the enemies for as long as possible."
msgstr ""
"Pelin nimi on \"Dodge the Creeps!\". Pelihahmosi täytyy liikkua ja vältellä "
"vihollisia niin kauan kuin mahdollista. Tässä on ennakkokuva lopputuloksesta:"
msgid "You will learn to:"
msgstr ""
msgid "Create a complete 2D game with the Godot editor."
msgstr ""
#, fuzzy
msgid "Structure a simple game project."
msgstr "Luo tai tuo projekti"
msgid "Move the player character and change its sprite."
msgstr ""
msgid "Spawn random enemies."
msgstr ""
msgid "Count the score."
msgstr ""
msgid "And more."
msgstr ""
msgid ""
"You'll find another series where you'll create a similar game but in 3D. We "
"recommend you to start with this one, though."
msgstr ""
msgid "**Why start with 2D?**"
msgstr ""
msgid ""
"If you are new to game development or unfamiliar with Godot, we recommend "
"starting with 2D games. This will allow you to become comfortable with both "
"before tackling 3D games, which tend to be more complicated."
msgstr ""
#, fuzzy
msgid "You can find a completed version of this project at this location:"
msgstr "Löydät valmiin version tästä projektista näistä osoitteista:"
msgid "https://github.com/godotengine/godot-demo-projects"
msgstr "https://github.com/godotengine/godot-demo-projects"
msgid "Prerequisites"
msgstr ""
msgid ""
"This step-by-step tutorial is intended for beginners who followed the "
"complete :ref:`Getting Started <toc-learn-step_by_step>`."
msgstr ""
#, fuzzy
msgid ""
"If you're an experienced programmer, you can find the complete demo's source "
"code here: `Godot demo projects <https://github.com/godotengine/godot-demo-"
"projects>`__."
msgstr ""
"Tämän dokumentaation lisäksi voit myös katsoa erilaisia Godot demoprojekteja "
"<https://github.com/godotengine/godot-demo-projects>`_."
msgid ""
"We prepared some game assets you'll need to download so we can jump straight "
"to the code."
msgstr ""
msgid "You can download them by clicking the link below."
msgstr ""
msgid ""
"`dodge_the_creeps_2d_assets.zip <https://github.com/godotengine/godot-docs-"
"project-starters/releases/download/latest-4.x/dodge_the_creeps_2d_assets."
"zip>`_."
msgstr ""
#, fuzzy
msgid "Contents"
msgstr "Sisältötesti"
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,199 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Setting up the game area"
msgstr "Skenen pystytys"
msgid ""
"In this first part, we're going to set up the game area. Let's get started "
"by importing the start assets and setting up the game scene."
msgstr ""
msgid ""
"We've prepared a Godot project with the 3D models and sounds we'll use for "
"this tutorial, linked in the index page. If you haven't done so yet, you can "
"download the archive here: `Squash the Creeps assets <https://github.com/"
"godotengine/godot-3d-dodge-the-creeps/releases/tag/1.1.0>`__."
msgstr ""
#, fuzzy
msgid ""
"Once you downloaded it, extract the .zip archive on your computer. Open the "
"Godot Project Manager and click the *Import* button."
msgstr ""
"Pura tämä projekti minne haluat. Avaa sitten Godot ja lisää projekti "
"projektinhallintaan 'Tuo' (kuvassa 'Import') painikkeella:"
msgid ""
"In the import popup, enter the full path to the freshly created directory "
"``squash_the_creeps_start/``. You can click the *Browse* button on the right "
"to open a file browser and navigate to the ``project.godot`` file the folder "
"contains."
msgstr ""
msgid "Click *Import & Edit* to open the project in the editor."
msgstr ""
msgid ""
"The start project contains an icon and two folders: ``art/`` and ``fonts/``. "
"There, you will find the art assets and music we'll use in the game."
msgstr ""
msgid ""
"There are two 3D models, ``player.glb`` and ``mob.glb``, some materials that "
"belong to these models, and a music track."
msgstr ""
#, fuzzy
msgid "Setting up the playable area"
msgstr "Projektin perustus"
msgid ""
"We're going to create our main scene with a plain :ref:`Node <class_Node>` "
"as its root. In the *Scene* dock, click the *Add Child Node* button "
"represented by a \"+\" icon in the top-left and double-click on *Node*. Name "
"the node ``Main``. An alternate method to rename the node is to right-click "
"on *Node* and choose *Rename* (or :kbd:`F2`). Alternatively, to add a node "
"to the scene, you can press :kbd:`Ctrl + a` (or :kbd:`Cmd + a` on macOS)."
msgstr ""
#, fuzzy
msgid ""
"Save the scene as ``main.tscn`` by pressing :kbd:`Ctrl + s` (:kbd:`Cmd + s` "
"on macOS)."
msgstr ""
"Tallenna skene. Napsauta Skene -> Tallenna skene, tai paina ``Ctrl+S`` "
"Windowsissa tai Linuxissa, tai ``Command+S`` Macissa."
msgid ""
"We'll start by adding a floor that'll prevent the characters from falling. "
"To create static colliders like the floor, walls, or ceilings, you can use :"
"ref:`StaticBody3D <class_StaticBody3D>` nodes. They require :ref:"
"`CollisionShape3D <class_CollisionShape3D>` child nodes to define the "
"collision area. With the ``Main`` node selected, add a :ref:`StaticBody3D "
"<class_StaticBody3D>` node, then a :ref:`CollisionShape3D "
"<class_CollisionShape3D>`. Rename the :ref:`StaticBody3D "
"<class_StaticBody3D>` to ``Ground``."
msgstr ""
#, fuzzy
msgid "Your scene tree should look like this"
msgstr "Skenepuusi pitäisi näyttää tältä:"
msgid ""
"A warning sign next to the :ref:`CollisionShape3D <class_CollisionShape3D>` "
"appears because we haven't defined its shape. If you click the icon, a popup "
"appears to give you more information."
msgstr ""
msgid ""
"To create a shape, select the :ref:`CollisionShape3D "
"<class_CollisionShape3D>` node, head to the *Inspector* and click the "
"*<empty>* field next to the *Shape* property. Create a new *BoxShape3D*."
msgstr ""
msgid ""
"The box shape is perfect for flat ground and walls. Its thickness makes it "
"reliable to block even fast-moving objects."
msgstr ""
msgid ""
"A box's wireframe appears in the viewport with three orange dots. You can "
"click and drag these to edit the shape's extents interactively. We can also "
"precisely set the size in the inspector. Click on the :ref:`BoxShape3D "
"<class_BoxShape3D>` to expand the resource. Set its *Size* to ``60`` on the "
"X axis, ``2`` for the Y axis, and ``60`` for the Z axis."
msgstr ""
msgid ""
"Collision shapes are invisible. We need to add a visual floor that goes "
"along with it. Select the ``Ground`` node and add a :ref:`MeshInstance3D "
"<class_MeshInstance3D>` as its child."
msgstr ""
msgid ""
"In the *Inspector*, click on the field next to *Mesh* and create a :ref:"
"`BoxMesh <class_BoxMesh>` resource to create a visible box."
msgstr ""
msgid ""
"Once again, it's too small by default. Click the box icon to expand the "
"resource and set its *Size* to ``60``, ``2``, and ``60``."
msgstr ""
msgid ""
"You should see a wide grey slab that covers the grid and blue and red axes "
"in the viewport."
msgstr ""
msgid ""
"We're going to move the ground down so we can see the floor grid. Select the "
"``Ground`` node, hold the :kbd:`Ctrl` key down to turn on grid snapping, and "
"click and drag down on the Y axis. It's the green arrow in the move gizmo."
msgstr ""
msgid ""
"If you can't see the 3D object manipulator like on the image above, ensure "
"the *Select Mode* is active in the toolbar above the view."
msgstr ""
msgid ""
"Move the ground down ``1`` meter, in order to have a visible editor grid. A "
"label in the bottom-left corner of the viewport tells you how much you're "
"translating the node."
msgstr ""
msgid ""
"Moving the *Ground* node down moves both children along with it. Ensure you "
"move the *Ground* node, **not** the *MeshInstance3D* or the "
"*CollisionShape3D*."
msgstr ""
msgid "Ultimately, ``Ground``'s transform.position.y should be -1"
msgstr ""
msgid ""
"Let's add a directional light so our scene isn't all grey. Select the "
"``Main`` node and add a child node :ref:`DirectionalLight3D "
"<class_DirectionalLight3D>`."
msgstr ""
msgid ""
"We need to move and rotate the :ref:`DirectionalLight3D "
"<class_DirectionalLight3D>` node. Move it up by clicking and dragging on the "
"manipulator's green arrow and click and drag on the red arc to rotate it "
"around the X axis, until the ground is lit."
msgstr ""
msgid ""
"In the *Inspector*, turn on *Shadow -> Enabled* by clicking the checkbox."
msgstr ""
#, fuzzy
msgid "At this point, your project should look like this."
msgstr "Lopullisen skriptin pitäisi näyttää tältä:"
msgid ""
"That's our starting point. In the next part, we will work on the player "
"scene and base movement."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,317 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Player scene and input actions"
msgstr "Pelaa skeneä nähdäksesi simulaation."
msgid ""
"In the next two lessons, we will design the player scene, register custom "
"input actions, and code player movement. By the end, you'll have a playable "
"character that moves in eight directions."
msgstr ""
msgid ""
"Create a new scene by going to the Scene menu in the top-left and clicking "
"*New Scene*."
msgstr ""
msgid "|image0|"
msgstr "|image0|"
#, fuzzy
msgid "image0"
msgstr "|image0|"
msgid ""
"Create a :ref:`CharacterBody3D <class_CharacterBody3D>` node as the root"
msgstr ""
msgid ""
"Name the :ref:`CharacterBody3D <class_CharacterBody3D>` to ``Player``. "
"Character bodies are complementary to the area and rigid bodies used in the "
"2D game tutorial. Like rigid bodies, they can move and collide with the "
"environment, but instead of being controlled by the physics engine, **you** "
"dictate their movement. You will see how we use the node's unique features "
"when we code the jump and squash mechanics."
msgstr ""
msgid ""
"To learn more about the different physics node types, see the :ref:"
"`doc_physics_introduction`."
msgstr ""
msgid ""
"For now, we're going to create a basic rig for our character's 3D model. "
"This will allow us to rotate the model later via code while it plays an "
"animation."
msgstr ""
msgid ""
"Add a :ref:`Node3D <class_Node3D>` node as a child of ``Player`` and name it "
"``Pivot``"
msgstr ""
msgid ""
"Then, in the FileSystem dock, expand the ``art/`` folder by double-clicking "
"it and drag and drop ``player.glb`` onto ``Pivot``."
msgstr ""
msgid "|image1|"
msgstr "|image1|"
#, fuzzy
msgid "image1"
msgstr "|image1|"
msgid ""
"This should instantiate the model as a child of ``Pivot``. You can rename it "
"to ``Character``."
msgstr ""
msgid "|image2|"
msgstr "|image2|"
#, fuzzy
msgid "image2"
msgstr "|image2|"
msgid ""
"The ``.glb`` files contain 3D scene data based on the open source GLTF 2.0 "
"specification. They're a modern and powerful alternative to a proprietary "
"format like FBX, which Godot also supports. To produce these files, we "
"designed the model in `Blender 3D <https://www.blender.org/>`__ and exported "
"it to GLTF."
msgstr ""
msgid ""
"As with all kinds of physics nodes, we need a collision shape for our "
"character to collide with the environment. Select the ``Player`` node again "
"and add a child node :ref:`CollisionShape3D <class_CollisionShape3D>`. In "
"the *Inspector*, on the *Shape* property, add a new :ref:`SphereShape3D "
"<class_SphereShape3D>`."
msgstr ""
msgid "The sphere's wireframe appears below the character."
msgstr ""
msgid "|image3|"
msgstr "|image3|"
#, fuzzy
msgid "image3"
msgstr "|image3|"
msgid ""
"It will be the shape the physics engine uses to collide with the "
"environment, so we want it to better fit the 3D model. Shrink it a bit by "
"dragging the orange dot in the viewport. My sphere has a radius of about "
"``0.8`` meters."
msgstr ""
msgid ""
"Then, move the shape up so its bottom roughly aligns with the grid's plane."
msgstr ""
msgid "|image4|"
msgstr "|image4|"
#, fuzzy
msgid "image4"
msgstr "|image4|"
msgid ""
"You can toggle the model's visibility by clicking the eye icon next to the "
"``Character`` or the ``Pivot`` nodes."
msgstr ""
msgid "|image5|"
msgstr "|image5|"
#, fuzzy
msgid "image5"
msgstr "|image5|"
#, fuzzy
msgid "Save the scene as ``player.tscn``"
msgstr "Lopuksi tallenna skene nimellä kuten esimerkiksi ``sayhello.tscn``."
msgid ""
"With the nodes ready, we can almost get coding. But first, we need to define "
"some input actions."
msgstr ""
#, fuzzy
msgid "Creating input actions"
msgstr "Ikonien luominen"
msgid ""
"To move the character, we will listen to the player's input, like pressing "
"the arrow keys. In Godot, while we could write all the key bindings in code, "
"there's a powerful system that allows you to assign a label to a set of keys "
"and buttons. This simplifies our scripts and makes them more readable."
msgstr ""
msgid ""
"This system is the Input Map. To access its editor, head to the *Project* "
"menu and select *Project Settings*."
msgstr ""
msgid "|image6|"
msgstr ""
#, fuzzy
msgid "image6"
msgstr "|image1|"
msgid ""
"At the top, there are multiple tabs. Click on *Input Map*. This window "
"allows you to add new actions at the top; they are your labels. In the "
"bottom part, you can bind keys to these actions."
msgstr ""
msgid "|image7|"
msgstr "|image7|"
#, fuzzy
msgid "image7"
msgstr "|image7|"
msgid ""
"Godot projects come with some predefined actions designed for user interface "
"design, which we could use here. But we're defining our own to support "
"gamepads."
msgstr ""
msgid ""
"We're going to name our actions ``move_left``, ``move_right``, "
"``move_forward``, ``move_back``, and ``jump``."
msgstr ""
msgid "To add an action, write its name in the bar at the top and press Enter."
msgstr ""
msgid "|image8|"
msgstr "|image8|"
#, fuzzy
msgid "image8"
msgstr "|image8|"
#, fuzzy
msgid "Create the following five actions:"
msgstr "Lisää sitten seuraavat kaksi funktiota:"
msgid "|image9|"
msgstr "|image9|"
#, fuzzy
msgid "image9"
msgstr "|image9|"
msgid ""
"To bind a key or button to an action, click the \"+\" button to its right. "
"Do this for ``move_left``. Press the left arrow key and click *OK*."
msgstr ""
msgid "Bind also the :kbd:`A` key, onto the action ``move_left``."
msgstr ""
msgid "|image12|"
msgstr "|image12|"
#, fuzzy
msgid "image12"
msgstr "|image12|"
msgid ""
"Let's now add support for a gamepad's left joystick. Click the \"+\" button "
"again but this time, select *Manual Selection -> Joypad Axes*."
msgstr ""
msgid "Select the negative X axis of the left joystick."
msgstr ""
msgid "Leave the other values as default and press *OK*"
msgstr ""
msgid ""
"If you want controllers to have different input actions, you should use the "
"Devices option in Additional Options. Device 0 corresponds to the first "
"plugged gamepad, Device 1 corresponds to the second plugged gamepad, and so "
"on."
msgstr ""
msgid ""
"Do the same for the other input actions. For example, bind the right arrow, "
"D, and the left joystick's positive axis to ``move_right``. After binding "
"all keys, your interface should look like this."
msgstr ""
#, fuzzy
msgid "|image15|"
msgstr "|image1|"
#, fuzzy
msgid "image15"
msgstr "|image1|"
msgid ""
"The final action to set up is the ``jump`` action. Bind the Space key and "
"the gamepad's A button."
msgstr ""
#, fuzzy
msgid "|image16|"
msgstr "|image1|"
#, fuzzy
msgid "image16"
msgstr "|image1|"
#, fuzzy
msgid "Your jump input action should look like this."
msgstr "Skenepuusi pitäisi näyttää tältä:"
#, fuzzy
msgid "|image18|"
msgstr "|image1|"
#, fuzzy
msgid "image18"
msgstr "|image1|"
msgid ""
"That's all the actions we need for this game. You can use this menu to label "
"any groups of keys and buttons in your projects."
msgstr ""
msgid "In the next part, we'll code and test the player's movement."
msgstr ""
#, fuzzy
msgid "image11"
msgstr "|image11|"
#, fuzzy
msgid "image17"
msgstr "|image1|"
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,355 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Moving the player with code"
msgstr "Pelaajan liikuttaminen"
msgid ""
"It's time to code! We're going to use the input actions we created in the "
"last part to move the character."
msgstr ""
msgid ""
"Right-click the ``Player`` node and select *Attach Script* to add a new "
"script to it. In the popup, set the *Template* to *Empty* before pressing "
"the *Create* button."
msgstr ""
msgid "|image0|"
msgstr "|image0|"
#, fuzzy
msgid "image0"
msgstr "|image0|"
msgid ""
"Let's start with the class's properties. We're going to define a movement "
"speed, a fall acceleration representing gravity, and a velocity we'll use to "
"move the character."
msgstr ""
msgid ""
"These are common properties for a moving body. The ``target_velocity`` is a :"
"ref:`3D vector <class_Vector3>` combining a speed with a direction. Here, we "
"define it as a property because we want to update and reuse its value across "
"frames."
msgstr ""
msgid ""
"The values are quite different from 2D code because distances are in meters. "
"While in 2D, a thousand units (pixels) may only correspond to half of your "
"screen's width, in 3D, it's a kilometer."
msgstr ""
msgid ""
"Let's code the movement. We start by calculating the input direction vector "
"using the global ``Input`` object, in ``_physics_process()``."
msgstr ""
msgid ""
"Here, we're going to make all calculations using the ``_physics_process()`` "
"virtual function. Like ``_process()``, it allows you to update the node "
"every frame, but it's designed specifically for physics-related code like "
"moving a kinematic or rigid body."
msgstr ""
msgid ""
"To learn more about the difference between ``_process()`` and "
"``_physics_process()``, see :ref:`doc_idle_and_physics_processing`."
msgstr ""
msgid ""
"We start by initializing a ``direction`` variable to ``Vector3.ZERO``. Then, "
"we check if the player is pressing one or more of the ``move_*`` inputs and "
"update the vector's ``x`` and ``z`` components accordingly. These correspond "
"to the ground plane's axes."
msgstr ""
msgid ""
"These four conditions give us eight possibilities and eight possible "
"directions."
msgstr ""
msgid ""
"In case the player presses, say, both W and D simultaneously, the vector "
"will have a length of about ``1.4``. But if they press a single key, it will "
"have a length of ``1``. We want the vector's length to be consistent, and "
"not move faster diagonally. To do so, we can call its ``normalize()`` method."
msgstr ""
msgid ""
"Here, we only normalize the vector if the direction has a length greater "
"than zero, which means the player is pressing a direction key."
msgstr ""
msgid ""
"In this case, we also get the ``Pivot`` node and call its ``look_at()`` "
"method. This method takes a position in space to look at in global "
"coordinates and the up direction. In this case, we can use the ``Vector3."
"UP`` constant."
msgstr ""
msgid ""
"A node's local coordinates, like ``position``, are relative to their parent. "
"Global coordinates, like ``global_position`` are relative to the world's "
"main axes you can see in the viewport instead."
msgstr ""
msgid ""
"In 3D, the property that contains a node's position is ``position``. By "
"adding the ``direction`` to it, we get a position to look at that's one "
"meter away from the ``Player``."
msgstr ""
msgid ""
"Then, we update the velocity. We have to calculate the ground velocity and "
"the fall speed separately. Be sure to go back one tab so the lines are "
"inside the ``_physics_process()`` function but outside the condition we just "
"wrote above."
msgstr ""
msgid ""
"The ``CharacterBody3D.is_on_floor()`` function returns ``true`` if the body "
"collided with the floor in this frame. That's why we apply gravity to the "
"``Player`` only while it is in the air."
msgstr ""
msgid ""
"For the vertical velocity, we subtract the fall acceleration multiplied by "
"the delta time every frame. This line of code will cause our character to "
"fall in every frame, as long it is not on or collides with the floor."
msgstr ""
msgid ""
"The physics engine can only detect interactions with walls, the floor, or "
"other bodies during a given frame if movement and collisions happen. We will "
"use this property later to code the jump."
msgstr ""
msgid ""
"On the last line, we call ``CharacterBody3D.move_and_slide()`` which is a "
"powerful method of the ``CharacterBody3D`` class that allows you to move a "
"character smoothly. If it hits a wall midway through a motion, the engine "
"will try to smooth it out for you. It uses the *velocity* value native to "
"the :ref:`CharacterBody3D <class_CharacterBody3D>`"
msgstr ""
msgid "And that's all the code you need to move the character on the floor."
msgstr ""
msgid "Here is the complete ``Player.gd`` code for reference."
msgstr ""
msgid "Testing our player's movement"
msgstr ""
msgid ""
"We're going to put our player in the ``Main`` scene to test it. To do so, we "
"need to instantiate the player and then add a camera. Unlike in 2D, in 3D, "
"you won't see anything if your viewport doesn't have a camera pointing at "
"something."
msgstr ""
msgid ""
"Save your ``Player`` scene and open the ``Main`` scene. You can click on the "
"*Main* tab at the top of the editor to do so."
msgstr ""
msgid "|image1|"
msgstr "|image1|"
#, fuzzy
msgid "image1"
msgstr "|image1|"
msgid ""
"If you closed the scene before, head to the *FileSystem* dock and double-"
"click ``main.tscn`` to re-open it."
msgstr ""
msgid ""
"To instantiate the ``Player``, right-click on the ``Main`` node and select "
"*Instance Child Scene*."
msgstr ""
msgid "|image2|"
msgstr "|image2|"
#, fuzzy
msgid "image2"
msgstr "|image2|"
msgid ""
"In the popup, double-click ``player.tscn``. The character should appear in "
"the center of the viewport."
msgstr ""
#, fuzzy
msgid "Adding a camera"
msgstr "Skriptin lisäys"
msgid ""
"Let's add the camera next. Like we did with our *Player*\\ 's *Pivot*, we're "
"going to create a basic rig. Right-click on the ``Main`` node again and "
"select *Add Child Node*. Create a new :ref:`Marker3D <class_Marker3D>`, and "
"name it ``CameraPivot``. Select ``CameraPivot`` and add a child node :ref:"
"`Camera3D <class_Camera3D>` to it. Your scene tree should look like this."
msgstr ""
msgid "|image3|"
msgstr "|image3|"
#, fuzzy
msgid "image3"
msgstr "|image3|"
msgid ""
"Notice the *Preview* checkbox that appears in the top-left when you have the "
"*Camera* selected. You can click it to preview the in-game camera projection."
msgstr ""
msgid "|image4|"
msgstr "|image4|"
#, fuzzy
msgid "image4"
msgstr "|image4|"
msgid ""
"We're going to use the *Pivot* to rotate the camera as if it was on a crane. "
"Let's first split the 3D view to be able to freely navigate the scene and "
"see what the camera sees."
msgstr ""
msgid ""
"In the toolbar right above the viewport, click on *View*, then *2 "
"Viewports*. You can also press :kbd:`Ctrl + 2` (:kbd:`Cmd + 2` on macOS)."
msgstr ""
msgid "|image11|"
msgstr "|image11|"
#, fuzzy
msgid "image11"
msgstr "|image11|"
msgid "|image5|"
msgstr "|image5|"
#, fuzzy
msgid "image5"
msgstr "|image5|"
msgid ""
"On the bottom view, select your :ref:`Camera3D <class_Camera3D>` and turn on "
"camera Preview by clicking the checkbox."
msgstr ""
msgid "|image6|"
msgstr ""
#, fuzzy
msgid "image6"
msgstr "|image1|"
msgid ""
"In the top view, move the camera about ``19`` units on the Z axis (the blue "
"one)."
msgstr ""
msgid "|image7|"
msgstr "|image7|"
#, fuzzy
msgid "image7"
msgstr "|image7|"
msgid ""
"Here's where the magic happens. Select the *CameraPivot* and rotate it "
"``-45`` degrees around the X axis (using the red circle). You'll see the "
"camera move as if it was attached to a crane."
msgstr ""
msgid "|image8|"
msgstr "|image8|"
#, fuzzy
msgid "image8"
msgstr "|image8|"
msgid ""
"You can run the scene by pressing :kbd:`F6` and press the arrow keys to move "
"the character."
msgstr ""
msgid "|image9|"
msgstr "|image9|"
#, fuzzy
msgid "image9"
msgstr "|image9|"
msgid ""
"We can see some empty space around the character due to the perspective "
"projection. In this game, we're going to use an orthographic projection "
"instead to better frame the gameplay area and make it easier for the player "
"to read distances."
msgstr ""
msgid ""
"Select the *Camera* again and in the *Inspector*, set the *Projection* to "
"*Orthogonal* and the *Size* to ``19``. The character should now look flatter "
"and the ground should fill the background."
msgstr ""
msgid ""
"When using an orthogonal camera in Godot 4, directional shadow quality is "
"dependent on the camera's *Far* value. The higher the *Far* value, the "
"further away the camera will be able to see. However, higher *Far* values "
"also decrease shadow quality as the shadow rendering has to cover a greater "
"distance."
msgstr ""
msgid ""
"If directional shadows look too blurry after switching to an orthogonal "
"camera, decrease the camera's *Far* property to a lower value such as "
"``100``. Don't decrease this *Far* property too much, or objects in the "
"distance will start disappearing."
msgstr ""
msgid "|image10|"
msgstr "|image10|"
#, fuzzy
msgid "image10"
msgstr "|image10|"
msgid ""
"Test your scene and you should be able to move in all 8 directions and not "
"glitch through the floor!"
msgstr ""
msgid ""
"Ultimately, we have both player movement and the view in place. Next, we "
"will work on the monsters."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,284 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Designing the mob scene"
msgstr "Skenen pystytys"
msgid ""
"In this part, you're going to code the monsters, which we'll call mobs. In "
"the next lesson, we'll spawn them randomly around the playable area."
msgstr ""
msgid ""
"Let's design the monsters themselves in a new scene. The node structure is "
"going to be similar to the ``player.tscn`` scene."
msgstr ""
msgid ""
"Create a scene with, once again, a :ref:`CharacterBody3D "
"<class_CharacterBody3D>` node as its root. Name it ``Mob``. Add a child "
"node :ref:`Node3D <class_Node3D>`, name it ``Pivot``. And drag and drop the "
"file ``mob.glb`` from the *FileSystem* dock onto the ``Pivot`` to add the "
"monster's 3D model to the scene."
msgstr ""
msgid "You can rename the newly created ``mob`` node into ``Character``."
msgstr ""
msgid "|image0|"
msgstr "|image0|"
#, fuzzy
msgid "image0"
msgstr "|image0|"
msgid ""
"We need a collision shape for our body to work. Right-click on the ``Mob`` "
"node, the scene's root, and click *Add Child Node*."
msgstr ""
msgid "|image1|"
msgstr "|image1|"
#, fuzzy
msgid "image1"
msgstr "|image1|"
#, fuzzy
msgid "Add a :ref:`CollisionShape3D <class_CollisionShape3D>`."
msgstr ":ref:`CollisionShape2D <class_CollisionShape2D>`"
msgid "|image2|"
msgstr "|image2|"
#, fuzzy
msgid "image2"
msgstr "|image2|"
msgid "In the *Inspector*, assign a *BoxShape3D* to the *Shape* property."
msgstr ""
msgid ""
"We should change its size to fit the 3D model better. You can do so "
"interactively by clicking and dragging on the orange dots."
msgstr ""
msgid ""
"The box should touch the floor and be a little thinner than the model. "
"Physics engines work in such a way that if the player's sphere touches even "
"the box's corner, a collision will occur. If the box is a little too big "
"compared to the 3D model, you may die at a distance from the monster, and "
"the game will feel unfair to the players."
msgstr ""
msgid "|image4|"
msgstr "|image4|"
#, fuzzy
msgid "image4"
msgstr "|image4|"
msgid ""
"Notice that my box is taller than the monster. It is okay in this game "
"because we're looking at the scene from above and using a fixed perspective. "
"Collision shapes don't have to match the model exactly. It's the way the "
"game feels when you test it that should dictate their form and size."
msgstr ""
#, fuzzy
msgid "Removing monsters off-screen"
msgstr "Vanhojen creepsien poisto"
msgid ""
"We're going to spawn monsters at regular time intervals in the game level. "
"If we're not careful, their count could increase to infinity, and we don't "
"want that. Each mob instance has both a memory and a processing cost, and we "
"don't want to pay for it when the mob is outside the screen."
msgstr ""
msgid ""
"Once a monster leaves the screen, we don't need it anymore, so we should "
"delete it. Godot has a node that detects when objects leave the screen, :ref:"
"`VisibleOnScreenNotifier3D <class_VisibleOnScreenNotifier3D>`, and we're "
"going to use it to destroy our mobs."
msgstr ""
msgid ""
"When you keep instancing an object, there's a technique you can use to avoid "
"the cost of creating and destroying instances all the time called pooling. "
"It consists of pre-creating an array of objects and reusing them over and "
"over."
msgstr ""
msgid ""
"When working with GDScript, you don't need to worry about this. The main "
"reason to use pools is to avoid freezes with garbage-collected languages "
"like C# or Lua. GDScript uses a different technique to manage memory, "
"reference counting, which doesn't have that caveat. You can learn more about "
"that here: :ref:`doc_gdscript_basics_memory_management`."
msgstr ""
msgid ""
"Select the ``Mob`` node and add a child node :ref:`VisibleOnScreenNotifier3D "
"<class_VisibleOnScreenNotifier3D>`. Another box, pink this time, appears. "
"When this box completely leaves the screen, the node will emit a signal."
msgstr ""
msgid "|image5|"
msgstr "|image5|"
#, fuzzy
msgid "image5"
msgstr "|image5|"
msgid "Resize it using the orange dots until it covers the entire 3D model."
msgstr ""
msgid "|image6|"
msgstr ""
#, fuzzy
msgid "image6"
msgstr "|image1|"
msgid "Coding the mob's movement"
msgstr ""
msgid ""
"Let's implement the monster's motion. We're going to do this in two steps. "
"First, we'll write a script on the ``Mob`` that defines a function to "
"initialize the monster. We'll then code the randomized spawn mechanism in "
"the ``main.tscn`` scene and call the function from there."
msgstr ""
#, fuzzy
msgid "Attach a script to the ``Mob``."
msgstr "Lisää skripti solmulle."
msgid "|image7|"
msgstr "|image7|"
#, fuzzy
msgid "image7"
msgstr "|image7|"
msgid ""
"Here's the movement code to start with. We define two properties, "
"``min_speed`` and ``max_speed``, to define a random speed range, which we "
"will later use to define ``CharacterBody3D.velocity``."
msgstr ""
msgid ""
"Similarly to the player, we move the mob every frame by calling the function "
"``CharacterBody3D.move_and_slide()``. This time, we don't update the "
"``velocity`` every frame; we want the monster to move at a constant speed "
"and leave the screen, even if it were to hit an obstacle."
msgstr ""
msgid ""
"We need to define another function to calculate the ``CharacterBody3D."
"velocity``. This function will turn the monster towards the player and "
"randomize both its angle of motion and its velocity."
msgstr ""
msgid ""
"The function will take a ``start_position``,the mob's spawn position, and "
"the ``player_position`` as its arguments."
msgstr ""
msgid ""
"We position the mob at ``start_position`` and turn it towards the player "
"using the ``look_at_from_position()`` method, and randomize the angle by "
"rotating a random amount around the Y axis. Below, ``randf_range()`` outputs "
"a random value between ``-PI / 4`` radians and ``PI / 4`` radians."
msgstr ""
msgid ""
"We got a random position, now we need a ``random_speed``. ``randi_range()`` "
"will be useful as it gives random int values, and we will use ``min_speed`` "
"and ``max_speed``. ``random_speed`` is just an integer, and we just use it "
"to multiply our ``CharacterBody3D.velocity``. After ``random_speed`` is "
"applied, we rotate ``CharacterBody3D.velocity`` Vector3 towards the player."
msgstr ""
#, fuzzy
msgid "Leaving the screen"
msgstr "Skenen pystytys"
msgid ""
"We still have to destroy the mobs when they leave the screen. To do so, "
"we'll connect our :ref:`VisibleOnScreenNotifier3D "
"<class_VisibleOnScreenNotifier3D>` node's ``screen_exited`` signal to the "
"``Mob``."
msgstr ""
msgid ""
"Head back to the 3D viewport by clicking on the *3D* label at the top of the "
"editor. You can also press :kbd:`Ctrl + F2` (:kbd:`Alt + 2` on macOS)."
msgstr ""
msgid "|image8|"
msgstr "|image8|"
#, fuzzy
msgid "image8"
msgstr "|image8|"
msgid ""
"Select the :ref:`VisibleOnScreenNotifier3D "
"<class_VisibleOnScreenNotifier3D>` node and on the right side of the "
"interface, navigate to the *Node* dock. Double-click the ``screen_exited()`` "
"signal."
msgstr ""
msgid "|image9|"
msgstr "|image9|"
#, fuzzy
msgid "image9"
msgstr "|image9|"
#, fuzzy
msgid "Connect the signal to the ``Mob``"
msgstr "Signaalin yhdistäminen funktioon"
msgid "|image10|"
msgstr "|image10|"
#, fuzzy
msgid "image10"
msgstr "|image10|"
msgid ""
"This will take you back to the script editor and add a new function for you, "
"``_on_visible_on_screen_notifier_3d_screen_exited()``. From it, call the "
"``queue_free()`` method. This function destroy the instance it's called on."
msgstr ""
msgid ""
"Our monster is ready to enter the game! In the next part, you will spawn "
"monsters in the game level."
msgstr ""
msgid "Here is the complete ``Mob.gd`` script for reference."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

View File

@@ -1,492 +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 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"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, fuzzy
msgid "Spawning monsters"
msgstr "Vihollisten lisääminen"
msgid ""
"In this part, we're going to spawn monsters along a path randomly. By the "
"end, you will have monsters roaming the game board."
msgstr ""
msgid "|image0|"
msgstr "|image0|"
#, fuzzy
msgid "image0"
msgstr "|image0|"
msgid ""
"Double-click on ``main.tscn`` in the *FileSystem* dock to open the ``Main`` "
"scene."
msgstr ""
msgid ""
"Before drawing the path, we're going to change the game resolution. Our game "
"has a default window size of ``1152x648``. We're going to set it to "
"``720x540``, a nice little box."
msgstr ""
#, fuzzy
msgid "Go to *Project -> Project Settings*."
msgstr ""
"Dialogin pääsee valitsemalla valikosta Projekti -> Projektin asetukset. "
"Kokeile sitä nyt."
msgid "|image1|"
msgstr "|image1|"
#, fuzzy
msgid "image1"
msgstr "|image1|"
msgid ""
"In the left menu, navigate down to *Display -> Window*. On the right, set "
"the *Width* to ``720`` and the *Height* to ``540``."
msgstr ""
msgid "|image2|"
msgstr "|image2|"
#, fuzzy
msgid "image2"
msgstr "|image2|"
#, fuzzy
msgid "Creating the spawn path"
msgstr "Luurangon luonti"
msgid ""
"Like you did in the 2D game tutorial, you're going to design a path and use "
"a :ref:`PathFollow3D <class_PathFollow3D>` node to sample random locations "
"on it."
msgstr ""
msgid ""
"In 3D though, it's a bit more complicated to draw the path. We want it to be "
"around the game view so monsters appear right outside the screen. But if we "
"draw a path, we won't see it from the camera preview."
msgstr ""
msgid ""
"To find the view's limits, we can use some placeholder meshes. Your viewport "
"should still be split into two parts, with the camera preview at the bottom. "
"If that isn't the case, press :kbd:`Ctrl + 2` (:kbd:`Cmd + 2` on macOS) to "
"split the view into two. Select the :ref:`Camera3D <class_Camera3D>` node "
"and click the *Preview* checkbox in the bottom viewport."
msgstr ""
msgid "|image3|"
msgstr "|image3|"
#, fuzzy
msgid "image3"
msgstr "|image3|"
#, fuzzy
msgid "Adding placeholder cylinders"
msgstr "Ominaisuuksien lisääminen"
msgid ""
"Let's add the placeholder meshes. Add a new :ref:`Node3D <class_Node3D>` as "
"a child of the ``Main`` node and name it ``Cylinders``. We'll use it to "
"group the cylinders. Select ``Cylinders`` and add a child node :ref:"
"`MeshInstance3D <class_MeshInstance3D>`"
msgstr ""
msgid "|image4|"
msgstr "|image4|"
#, fuzzy
msgid "image4"
msgstr "|image4|"
msgid "In the *Inspector*, assign a *CylinderMesh* to the *Mesh* property."
msgstr ""
msgid "|image5|"
msgstr "|image5|"
#, fuzzy
msgid "image5"
msgstr "|image5|"
msgid ""
"Set the top viewport to the top orthogonal view using the menu in the "
"viewport's top-left corner. Alternatively, you can press the keypad's 7 key."
msgstr ""
msgid "|image6|"
msgstr ""
#, fuzzy
msgid "image6"
msgstr "|image1|"
msgid ""
"The grid may be distracting. You can toggle it by going to the *View* menu "
"in the toolbar and clicking *View Grid*."
msgstr ""
msgid "|image7|"
msgstr "|image7|"
#, fuzzy
msgid "image7"
msgstr "|image7|"
msgid ""
"You now want to move the cylinder along the ground plane, looking at the "
"camera preview in the bottom viewport. I recommend using grid snap to do so. "
"You can toggle it by clicking the magnet icon in the toolbar or pressing Y."
msgstr ""
msgid "|image8|"
msgstr "|image8|"
#, fuzzy
msgid "image8"
msgstr "|image8|"
msgid ""
"Move the cylinder so it's right outside the camera's view in the top-left "
"corner."
msgstr ""
msgid "|image9|"
msgstr "|image9|"
#, fuzzy
msgid "image9"
msgstr "|image9|"
msgid ""
"We're going to create copies of the mesh and place them around the game "
"area. Press :kbd:`Ctrl + D` (:kbd:`Cmd + D` on macOS) to duplicate the node. "
"You can also right-click the node in the *Scene* dock and select "
"*Duplicate*. Move the copy down along the blue Z axis until it's right "
"outside the camera's preview."
msgstr ""
msgid ""
"Select both cylinders by pressing the :kbd:`Shift` key and clicking on the "
"unselected one and duplicate them."
msgstr ""
msgid "|image10|"
msgstr "|image10|"
#, fuzzy
msgid "image10"
msgstr "|image10|"
msgid "Move them to the right by dragging the red X axis."
msgstr ""
msgid "|image11|"
msgstr "|image11|"
#, fuzzy
msgid "image11"
msgstr "|image11|"
msgid ""
"They're a bit hard to see in white, aren't they? Let's make them stand out "
"by giving them a new material."
msgstr ""
msgid ""
"In 3D, materials define a surface's visual properties like its color, how it "
"reflects light, and more. We can use them to change the color of a mesh."
msgstr ""
msgid ""
"We can update all four cylinders at once. Select all the mesh instances in "
"the *Scene* dock. To do so, you can click on the first one and Shift click "
"on the last one."
msgstr ""
msgid "|image12|"
msgstr "|image12|"
#, fuzzy
msgid "image12"
msgstr "|image12|"
msgid ""
"In the *Inspector*, expand the *Material* section and assign a :ref:"
"`StandardMaterial3D <class_StandardMaterial3D>` to slot *0*."
msgstr ""
msgid "|image13|"
msgstr "|image13|"
#, fuzzy
msgid "image13"
msgstr "|image13|"
msgid ""
"Click the sphere icon to open the material resource. You get a preview of "
"the material and a long list of sections filled with properties. You can use "
"these to create all sorts of surfaces, from metal to rock or water."
msgstr ""
msgid "Expand the *Albedo* section."
msgstr ""
msgid ""
"Set the color to something that contrasts with the background, like a bright "
"orange."
msgstr ""
msgid "|image14|"
msgstr "|image14|"
#, fuzzy
msgid "image14"
msgstr "|image14|"
msgid ""
"We can now use the cylinders as guides. Fold them in the *Scene* dock by "
"clicking the grey arrow next to them. Moving forward, you can also toggle "
"their visibility by clicking the eye icon next to *Cylinders*."
msgstr ""
#, fuzzy
msgid "|image15|"
msgstr "|image1|"
#, fuzzy
msgid "image15"
msgstr "|image1|"
msgid ""
"Add a child node :ref:`Path3D <class_Path3D>` to ``Main`` node. In the "
"toolbar, four icons appear. Click the *Add Point* tool, the icon with the "
"green \"+\" sign."
msgstr ""
#, fuzzy
msgid "|image16|"
msgstr "|image1|"
#, fuzzy
msgid "image16"
msgstr "|image1|"
msgid "You can hover any icon to see a tooltip describing the tool."
msgstr ""
msgid ""
"Click in the center of each cylinder to create a point. Then, click the "
"*Close Curve* icon in the toolbar to close the path. If any point is a bit "
"off, you can click and drag on it to reposition it."
msgstr ""
#, fuzzy
msgid "|image17|"
msgstr "|image1|"
#, fuzzy
msgid "image17"
msgstr "|image1|"
#, fuzzy
msgid "Your path should look like this."
msgstr "Skenepuusi pitäisi näyttää tältä:"
#, fuzzy
msgid "|image18|"
msgstr "|image1|"
#, fuzzy
msgid "image18"
msgstr "|image1|"
msgid ""
"To sample random positions on it, we need a :ref:`PathFollow3D "
"<class_PathFollow3D>` node. Add a :ref:`PathFollow3D <class_PathFollow3D>` "
"as a child of the ``Path3D``. Rename the two nodes to ``SpawnPath`` and "
"``SpawnLocation``, respectively. It's more descriptive of what we'll use "
"them for."
msgstr ""
#, fuzzy
msgid "|image19|"
msgstr "|image1|"
#, fuzzy
msgid "image19"
msgstr "|image1|"
msgid "With that, we're ready to code the spawn mechanism."
msgstr ""
#, fuzzy
msgid "Spawning monsters randomly"
msgstr "Vihollisten lisääminen"
#, fuzzy
msgid "Right-click on the ``Main`` node and attach a new script to it."
msgstr ""
"Napsauta oikealla Panel solmusta ja valitse \"Liitä skripti\" pikavalikosta:"
msgid ""
"We first export a variable to the *Inspector* so that we can assign ``mob."
"tscn`` or any other monster to it."
msgstr ""
msgid ""
"We want to spawn mobs at regular time intervals. To do this, we need to go "
"back to the scene and add a timer. Before that, though, we need to assign "
"the ``mob.tscn`` file to the ``mob_scene`` property above (otherwise it's "
"null!)"
msgstr ""
msgid ""
"Head back to the 3D screen and select the ``Main`` node. Drag ``mob.tscn`` "
"from the *FileSystem* dock to the *Mob Scene* slot in the *Inspector*."
msgstr ""
#, fuzzy
msgid "|image20|"
msgstr "|image2|"
#, fuzzy
msgid "image20"
msgstr "|image2|"
#, fuzzy
msgid ""
"Add a new :ref:`Timer <class_Timer>` node as a child of ``Main``. Name it "
"``MobTimer``."
msgstr ":ref:`Timer <class_Timer>` nimeltä ``MessageTimer``."
#, fuzzy
msgid "|image21|"
msgstr "|image2|"
#, fuzzy
msgid "image21"
msgstr "|image2|"
msgid ""
"In the *Inspector*, set its *Wait Time* to ``0.5`` seconds and turn on "
"*Autostart* so it automatically starts when we run the game."
msgstr ""
#, fuzzy
msgid "|image22|"
msgstr "|image2|"
#, fuzzy
msgid "image22"
msgstr "|image2|"
msgid ""
"Timers emit a ``timeout`` signal every time they reach the end of their "
"*Wait Time*. By default, they restart automatically, emitting the signal in "
"a cycle. We can connect to this signal from the *Main* node to spawn "
"monsters every ``0.5`` seconds."
msgstr ""
msgid ""
"With the *MobTimer* still selected, head to the *Node* dock on the right, "
"and double-click the ``timeout`` signal."
msgstr ""
#, fuzzy
msgid "|image23|"
msgstr "|image2|"
#, fuzzy
msgid "image23"
msgstr "|image2|"
#, fuzzy
msgid "Connect it to the *Main* node."
msgstr "HUD- ja Main-skenejen liittäminen"
#, fuzzy
msgid "|image24|"
msgstr "|image2|"
#, fuzzy
msgid "image24"
msgstr "|image2|"
msgid ""
"This will take you back to the script, with a new empty "
"``_on_mob_timer_timeout()`` function."
msgstr ""
msgid "Let's code the mob spawning logic. We're going to:"
msgstr ""
#, fuzzy
msgid "Instantiate the mob scene."
msgstr "Tallenna skene."
msgid "Sample a random position on the spawn path."
msgstr ""
msgid "Get the player's position."
msgstr ""
msgid ""
"Call the mob's ``initialize()`` method, passing it the random position and "
"the player's position."
msgstr ""
#, fuzzy
msgid "Add the mob as a child of the *Main* node."
msgstr "Lisää skripti solmulle."
msgid ""
"Above, ``randf()`` produces a random value between ``0`` and ``1``, which is "
"what the *PathFollow* node's ``progress_ratio`` expects: 0 is the start of "
"the path, 1 is the end of the path. The path we have set is around the "
"camera's viewport, so any random value between 0 and 1 is a random position "
"alongside the edges of the viewport!"
msgstr ""
msgid "Here is the complete ``main.gd`` script so far, for reference."
msgstr ""
msgid ""
"You can test the scene by pressing :kbd:`F6`. You should see the monsters "
"spawn and move in a straight line."
msgstr ""
#, fuzzy
msgid "|image25|"
msgstr "|image2|"
#, fuzzy
msgid "image25"
msgstr "|image2|"
msgid ""
"For now, they bump and slide against one another when their paths cross. "
"We'll address this in the next part."
msgstr ""
msgid "Translation status"
msgstr "Käännöksen tila"

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